我是一个新手程序员,所以我很难让它工作。
我有一个 javascript,可以在单击按钮时将 <textarea>
标签的内容滚动到底部,但是当我在其中添加 NicEdit 插件时,脚本不起作用。
我已经尝试了所有通过创建外部div 和包装器使其工作的其他方法,但我确信它是 NicEdit 的组成部分。
没有 NicEdit 的工作脚本:http://jsfiddle.net/gab4qhc1
与 NicEdit: http://jsfiddle.net/sgdLzjau 一起不起作用的脚本
请帮助我使脚本与nicedit一起使用。
谢谢
首先,我建议您使用 CKEditor
或 TinyMCE
nicEdit
因为它不在积极开发中(http://nicedit.com/docs.php)。
让我们来解决问题,控制台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>
脚本
$(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
他们使用带有类nicEdit-main
的div
。
我希望这能帮助您解决问题。快乐编码... :)