Как остановить Live Bind () - PullRequest
       35

Как остановить Live Bind ()

0 голосов
/ 11 июля 2011

Я пытаюсь скрыть div после того, как пользователь нажимает на документ.

<div class="active">
   <a class="agree" href="javascript:;">I Agree</a>
   <a class="disagree" href="javascript:;">Disagree</a>
</div>

Используя следующее решение -

var mouseOverActiveElement = false;

$('.active').live('mouseenter', function(){
    mouseOverActiveElement = true; 
}).live('mouseleave', function(){ 
    mouseOverActiveElement = false; 
});
$("html").click(function(){ 
    if (!mouseOverActiveElement) {
        //Do something special
    }
});

Моя проблема в том, как я могу unbind html, чтобы содержимое внутри do something special прекратило стрельбу и все снова началось?

В настоящий момент - html.click(); продолжает срабатывать каждый раз?

Ответы [ 2 ]

0 голосов
/ 11 июля 2011

Попробуйте это

    var mouseOverActiveElement = false;

    $('.active').live('mouseenter', function(){
        mouseOverActiveElement = true; 
    }).live('mouseleave', function(){ 
        mouseOverActiveElement = false; 
    });
    $("html").click(function(){ 
        if (!mouseOverActiveElement) {
            //Do something special
            mouseOverActiveElement = false;

//If you want to unbind html click event then use $("html").unbind('click');
        }
    });
0 голосов
/ 11 июля 2011

Вы используете метод unbind :

$("html").unbind("click");
...