Прежде всего, я бы порекомендовал вам использовать CKEditor
или TinyMCE
, потому что nicEdit
не находится в активной разработке (http://nicedit.com/docs.php).
Придем к проблеме, Произошла ошибка вconsole bkLib.domLoad[i] is not a function
(я не знаю, что такое bkLib
), поэтому я удалил эту функцию и удалил код JS
nicEditors.allTextAreas({buttonList : ['fontSize','bold','italic','underline','strikeThrough','subscript','superscript']});
из файла HTML и добавил в файл сценария (ядумаю, что это хорошо, если возможно разделить код JS и HTML) следующим образом
HTML
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.0.js"></script>
<script src="http://js.nicedit.com/nicEdit-latest.js" type="text/javascript"></script>
<textarea id="textarea" cols=30 rows=5 >
Please presse enter Please presse enterPlease presse enter
Please presse enterPlease presse enterPlease presse enter
Please presse enterPlease presseenter
Please presse enterPlease presse enter
Please presse enter
</textarea>
<button id="button">click</button>
Script
$(document).ready(function(){
nicEditors.allTextAreas({buttonList : ['fontSize','bold','italic','underline','strikeThrough','subscript','superscript']});
$("#button").click(function(){
var textArea = $('.nicEdit-main');/*replace #textarea with .nicEdit-main*/
textArea.scrollTop( textArea[0].scrollHeight - textArea.height() );
});
});
(Не нужно изменять CSS)
Почему селектор #textarea
не работает, а .nicEdit-main
работает
Итак, причина этого заключается в каждомТекстовый редактор на основе HTML использует собственную оболочку вместо textarea
, чтобы сделать ее более настраиваемой, например применять эффекты bold
, italic
, а в nicEdit
они используют div
с классом nicEdit-main
.
Надеюсь, это поможет вам решить вашу проблему. Счастливого кодирования ... :)