Javascript 按enter键创建br标记

Javascript 按enter键创建br标记,javascript,tinymce,Javascript,Tinymce,我在一个使用tinymce编辑器的项目中工作。当光标位于方程式框内时,我希望按enter键时光标位于方程式框外。现在我的代码运行良好,但当我按enter键时,它会自动在编辑器中创建一个br标记。有人能指出我代码中的问题吗? 我的代码是: tinyMCE.init({ theme : "advanced", mode: "exact", elements : "elm1", oninit: function() { loadlistener(); }, javascript函数是: var am

我在一个使用tinymce编辑器的项目中工作。当光标位于方程式框内时,我希望按enter键时光标位于方程式框外。现在我的代码运行良好,但当我按enter键时,它会自动在编辑器中创建一个br标记。有人能指出我代码中的问题吗? 我的代码是:

tinyMCE.init({
theme : "advanced",
mode: "exact",
elements : "elm1",
oninit: function() { loadlistener(); },
javascript函数是:

var amedit = false;

 function loadlistener() {
//console.log('load');
$("#elm1_ifr").contents().keydown(function (e) {
    //console.log('key');
    var code = (e.keyCode ? e.keyCode : e.which);
    //console.log(code);
    if (code == 13 && amedit) {

        tinyMCE.execCommand("mceRepaint");

    }
});
var p_parent = $("#elm1_ifr").contents().find("p");
setInterval(function () {
    if (p_parent.find('span').length && p_parent.find('span')) {

        amedit = true;
    } else {
        amedit = false;
    }
}, 200)
  };
您可以在我的live网站上查看:

同时也让你更清楚地了解我的问题


谢谢

尝试从
keydown
处理程序返回
false
。@Teemu,谢谢你的评论。我已经输入了return false,但只在chrome中有效。你能解释一下如何在firefox和IE中解决它吗?试试
e.preventDefault()
e.stopPropagation()
我对jQuery不太了解,但是它应该规范化事件属性,因此您可以使用来检测
ENTER
。同样使用
$(“#elm1_ifr”).contents()
看起来很奇怪,您应该在
iframe
中找到
窗口(如果
$(“#elm1_ifr”)
iframe
元素?)@返回的爆米花
false
应该在jQuery中执行这两项操作。