Jquery 悬停和清除超时不';我似乎没有在使用云缩放

Jquery 悬停和清除超时不';我似乎没有在使用云缩放,jquery,hover,settimeout,Jquery,Hover,Settimeout,我试图在鼠标在某个div上停留2秒后触发事件。如果鼠标离开div,那么什么也不会发生。现在它所做的是,当我将鼠标移到div上并将其移开时,它仍然会触发事件,但它不应该触发 以下是我写的: $(document).ready(function(){ var timer; $('.image_wrapper').hover(function() { timer = setTimeout(function() { alert('This is m

我试图在鼠标在某个div上停留2秒后触发事件。如果鼠标离开div,那么什么也不会发生。现在它所做的是,当我将鼠标移到div上并将其移开时,它仍然会触发事件,但它不应该触发

以下是我写的:

$(document).ready(function(){
    var timer;
    $('.image_wrapper').hover(function() {
        timer = setTimeout(function() {
            alert('This is my event');
       }, 2000);
    }, 
    function () {
        clearTimeout(timer);
    });
});
有什么想法吗

谢谢

编辑 问题在于同时使用云缩放。如果使用Cloud Zoom插件在代码下方添加以下行,您将能够重现该问题:

$('.cloud-zoom, .cloud-zoom-gallery').CloudZoom();

你能提供一个与你相关的有问题的代码吗?我已经试过了,它可以工作了()你应该用你的html,css等做一个JSFIDLE,如果它仍然不能工作。。我们可以帮助…实际上它确实像Fab Sa说的那样工作。我刚刚发现,当页面上包含Zoom Cloud插件时,它不起作用: