nicEdit不会检测“空格”字符

时间:2011-11-24 18:47:47

标签: javascript jquery jstree nicedit

我遇到了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中对其进行了测试,但两者都存在错误。

非常感谢你的时间! :)

3 个答案:

答案 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注释掉空格热键可以解决问题。