Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何从元素取消绑定focusout事件_Jquery - Fatal编程技术网

Jquery 如何从元素取消绑定focusout事件

Jquery 如何从元素取消绑定focusout事件,jquery,Jquery,一个特殊的问题 脚本在“mousedown”上执行某些操作,然后在“keypress”、“focusout”、“keyup”事件中执行 问题是,一旦其中一个事件被执行,我如何杀死剩下的两个事件 我尝试了$(document).off(),$(this).off('focusout'),但没有任何效果 有什么线索吗 .on('mousedown', '.task-content', function() { // Make DIV Editable }) .on('keypress',

一个特殊的问题

脚本在“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
  }
})

您的代码运行正常,可能指向错误的
选择器

$('.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 ");
})

检查这个。

我不明白你想做什么。你能显示你为取消/解除绑定事件而尝试的实际代码吗?@Mathletics/我对代码进行了一些编辑(顺便说一句,这些代码工作得很好-发布代码可能会很长)。具体发生的是,一旦我点击“回车”(按键,13)//focusout仍在“监听”,也可以执行。看到了吗?我想在使用其中一个进程后,杀死另外两个进程。我猜他只想执行3个处理程序中的1个,不需要解除绑定。谢谢。我刚刚设法做到了这一点,但是我需要在“鼠标向下”上再次“重用”焦点换句话说,它不能永久终止。@10月使用委托将重新绑定它。委托不是被.on()取代了吗?@OctoberEleven谢谢你纠正了我的错误,你可以使用.on()