Javascript 只有“点击”事件有效,如何添加“按键”事件

Javascript 只有“点击”事件有效,如何添加“按键”事件,javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,我有一个iframe,我有两个div。一个是可编辑的,另一个不是 当在可编辑元素中键入内容时,我需要将文本发送到服务器。我正试图从这次活动中听到消息,但我什么也得不到 但只有点击事件有效 我也试过用承诺的方式。。不走运。我总是把iframe身体作为目标,而不是让childrendiv如何克服这个问题 以下是我的功能: $.when(iframebody.append(div).append(msgDiv)).done(function(output){ output.find('

我有一个iframe,我有两个div。一个是可编辑的,另一个不是

当在可编辑元素中键入内容时,我需要将文本发送到服务器。我正试图从这次活动中听到消息,但我什么也得不到

但只有点击事件有效

我也试过用承诺的方式。。不走运。我总是把iframe身体作为目标,而不是让childrendiv如何克服这个问题

以下是我的功能:

$.when(iframebody.append(div).append(msgDiv)).done(function(output){
        output.find('.mceEditable').on('click', function(e){
            console.log("hi", $(e.target)); //works!
        });
});

$.when(iframebody.append(div).append(msgDiv)).done(function(output){
    output.find('.mceEditable').on('keyup', function(e){
        console.log("hi", $(e.target)); // show the parent (body)
    });
});
html:

更新

我正在尝试打开和关闭body editable属性,但运气不佳


你是不是想用鼠标而不是键盘

HTML


你意识到你的身体也是可编辑的吗?加上Mouser所说的-是身体本身接收到了keyup事件,因为身体是可编辑的。是的,身体是可编辑的,但我怎么能克服这个问题呢?是的,单击正在工作,但鼠标没有。如何把老鼠从孩子身上拿起来?即使是你的小提琴,我也在使用chrome,但我需要让它与chrome和IE9一起工作,确保你点击的是单词“some”。这是触发两个事件的唯一部分。除此之外,我不知道为什么它对你不起作用-我也在使用Chrome,而且我没有任何问题。确切地说,这在单击上起作用,但我没有鼠标。你能尝试其他浏览器吗?
<body id="tinymce" class="mce-content-body " data-id="tinyeditor1" contenteditable="true" spellcheck="false">
    <p><br data-mce-bogus="1"></p>
    <div class="txtMsg mceNonEditable" data-mce-contenteditable="false" style="margin-bottom: 5px; background: rgb(242, 242, 242);">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, n</div>
    <div class="msgText mceEditable" data-mce-contenteditable="true" style="margin-bottom: 5px; outline: 0px;">
    <span class="nameInfo" style="display:none">XYZ - Says : </span>&nbsp; some</div>
</body>
<body id="tinymce" class="mce-content-body " data-id="tinyeditor1" contenteditable="true" spellcheck="false">
    <p>
        <br data-mce-bogus="1"></br>
    </p>
    <div class="txtMsg mceNonEditable" data-mce-contenteditable="false" style="margin-bottom: 5px; background: rgb(242, 242, 242);">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, n</div>
    <div class="msgText mceEditable" data-mce-contenteditable="true" style="margin-bottom: 5px; outline: 0px;"> <span class="nameInfo" style="display:none">XYZ - Says : </span>
&nbsp; some</div>
</body>
$('.mceEditable').click(function (e) {
    console.log("hi", $(e.target))
});
$('.mceEditable').mouseup(function (e) {
    console.log("hi", $(e.target));
});