我遇到了nicEdit脚本的问题。 nicEdit是一个javascript库,用于将网页的html textareas设置为RTF格式字段。
它工作正常,但是当我输入'space'字符时没有检测到。我谷歌这个,我没有发现任何线索。我完全做了调用js函数的方法:
<script type="text/javascript" src="http://js.nicedit.com/nicEdit-latest.js"></script>
<script type="text/javascript">
bkLib.onDomLoaded(function() { nicEditors.allTextAreas({maxHeight:75}) });
</script>
有人遇到相同或类似的问题,或者知道如何解决这个问题?
修改:我在Google-Chrome和Internet Explorer中对其进行了测试,但两者都存在错误。
非常感谢你的时间! :)
答案 0 :(得分:3)
我遇到了同样的问题,并按如下方式解决了这个问题:
问题:'space'未在nicEdit字段中注册
追踪:实际问题是jquery ui功能(本例中为accordion)已为编辑父级注册了'keydown'事件。这可以防止'keypress'事件传播到编辑器注册的'keypress'事件处理程序。我没有深入挖掘,知道为什么它只是“空间”键未能传播。
解决方案:我从编辑器父级中删除了“keydown”事件。在我的情况下,需要以下代码段:
$(".accBar,.accContent").unbind('keydown');
我希望这对某人有帮助。
答案 1 :(得分:1)
未解决,但猜到问题的原因:
我只使用textarea
和问题的javascript调用创建了一个简单的html文档,并且工作正常。
所以很明显不是配置问题,是某种与其他javascript库的冲突我正在使用( JQuery 和 jstree ) 。这就是我在谷歌上找不到它的原因&gt; _&lt;。
我的解决方案是将nicEdit更改为jWYSIWYG,一个基于jquery的RTF,现在一切正常。
答案 2 :(得分:0)
问题很可能是jsTree热键插件拦截空格并调用“preventDefault”。请在此处查看问题:
https://github.com/vakata/jstree/issues/363
删除热键插件或从jsTree注释掉空格热键可以解决问题。