Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.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 ui mouseleave在jquery中不工作_Jquery Ui_Jquery_Jquery Plugins_Jquery Selectors - Fatal编程技术网

Jquery ui mouseleave在jquery中不工作

Jquery ui mouseleave在jquery中不工作,jquery-ui,jquery,jquery-plugins,jquery-selectors,Jquery Ui,Jquery,Jquery Plugins,Jquery Selectors,我的mouseleave在jquery代码中不起作用 下面提供我的js代码 mouseleave: function () { $(this).find("div:last").remove(); } 您是否尝试过这种方式: mouseleave: function () { $("div:last",this).remove(); } 问题不在于mouseleave侦听器,问题在于如何绑定这些事件处理程序并解除它们的绑定。div正在被删除,但每次mouseenter事件都会

我的mouseleave在jquery代码中不起作用

下面提供我的js代码

mouseleave: function () {
    $(this).find("div:last").remove();
}

您是否尝试过这种方式:

mouseleave: function () {
   $("div:last",this).remove();
}

问题不在于
mouseleave
侦听器,问题在于如何绑定这些事件处理程序并解除它们的绑定。div正在被删除,但每次
mouseenter
事件都会读取该div。由于某些原因,在使用
.on()
选择器时,鼠标指针事件没有解除绑定。这可能与这条路有关

当提供选择器时,事件处理程序称为委派。当事件直接发生在绑定元素上时,不会调用该处理程序,而仅针对与选择器匹配的子体(内部元素)。jQuery将事件从事件目标冒泡到附加处理程序的元素(即,从最内层到最外层的元素),并为与选择器匹配的路径上的任何元素运行处理程序

现在,我还不能100%确定为什么,但如果您使用直接绑定处理程序,无论哪种方式都会起作用,如下所示:

$('.specialHover').on({
    mouseenter: function() {
        $("<div class='cta'>add image</div>").click(function() {
            var $me = $(this);
            $me.parent().unbind('mouseenter').children('img').attr(
                'src', 
                'http://www.onlinegrocerystore.co.uk/images/goodfood.jpg'
            );
            $me.remove();
        }).appendTo(this);
    },
    mouseleave: function() {
        $(this).find('div:last').remove();
    }
});
$('.specialHover')。在({
mouseenter:function(){
$(“添加图像”)。单击(函数(){
var$me=$(这个);
$me.parent().unbind('mouseenter').children('img').attr(
“src”,
'http://www.onlinegrocerystore.co.uk/images/goodfood.jpg'
);
$me.remove();
}).附于(本);
},
mouseleave:function(){
$(this.find('div:last').remove();
}
});

请参阅:

您的
mouseleave
侦听器的预期行为是什么?对于200行代码中的问题,这是一个很好的描述?@mmmshuddup:在添加图像操作之后…对于特定的img标记,鼠标悬停时不应再出现添加图像按钮@adeneo@mmmshuddup:你们收到了吗是的,我现在明白了。这很奇怪。你能更具体地说它应该在你的小提琴中删除什么,可能是我没有正确地得到它。非常感谢你…你能给你的skype或gmail id吗…我不明白你的解释…所以我可以直接给你打电话