一个特殊的问题。
脚本在'mousedown'上执行某些操作,然后在'keypress','focusout','keyup'事件上执行。
问题是如果其中一个事件被执行,我该如何杀死剩下的两个事件。
我尝试过$(document).off()
,$(this).off('focusout')
,但没有任何作用。
任何线索?
.on('mousedown', '.task-content', function() {
// Make DIV Editable
})
.on('keypress', '.task-content', function (e) {
if (e.which == 13 && !e.shiftKey) {
// Update DIV content to DB
}
})
.on('focusout', '.task-content', function() {
// Update DIV content to DB
})
.on('keyup', '.task-content', function (e) {
if (e.which == 27) {
// Return DIV to previous state
}
})
答案 0 :(得分:1)
您的代码运行正常,也许您可能指出错误selector
。
$('.task-content').on('keypress', function (e) {
if (e.which == 13 && !e.shiftKey) {
// Update DIV content to DB
alert("key press");
$(this).off('focusout');
}
})
$('.task-content').on('focusout', function () {
// Update DIV content to DB
alert("focus out ");
})
选中JSFiddle。