仅在鼠标离开后显示元素一次

时间:2014-05-09 13:21:12

标签: javascript jquery

计算器!

每个人都知道好人鼠标和好人鼠标

我决定扩展我的功能并写下这样的东西:

    $("div").click(function(){
    $(this).on('mouseleave', function(){
            alert("Hello, bro");
        });
});

我想要什么?好吧,我点击元素,做一些事情,当我离开jQuery说:"你好,兄弟!"

BUT!

如果我关闭对话框,然后用光标返回我的可爱元素,将再次出现狂野对话框。但它应该只在点击元素后出现。

你们有什么建议吗?

2 个答案:

答案 0 :(得分:2)

$('div').click(function(){ //Setup the click
    $(this).one('mouseleave', function(){ //Use the 'one' style rather than @Bala's method
        alert('Hello, bro');
    });
});

答案 1 :(得分:0)

我认为当你点击div时,你必须激活鼠标离开事件。再次点击它也会触发两次,因此它将被绑定..如果你关闭它,它将会触发一次。并且不要使用直接div元素。你必须使用任何选择器,如id,class

$("div").click(function(){
    $(this).off('mouseleave');

    $(this).on('mouseleave', function(){
        alert("Hello, bro");
        $(this).off('mouseleave');
    });
});