2015-04-30 2 views
0

Так вот моя ситуация ... Я хочу сделать что-то на это влияет:Wrap jQuery Слушатели событий в булевом выражении If Statement?

var myBool = false; 
function flipBool(){ 
    if(myBool){ 
      myBool = false; 
    } else { 
      myBool = true; 
    } 
} 
jQuery(document).ready(function(){ 
    if(myBool){ 
      jQuery("div.someDiv").hover(...)...; 
    } else {//don't do the hover stuff...} 
}); 

Есть простой способ сделать это? Потому что вещи просто не работают, как им следует, как я это понимаю.

+2

Почему бы не сделать 'myBool = myBool' вместо того, что'! если-else'? – TheDude

+0

Это был быстрый пример ... это предназначено, чтобы выяснить, могу ли я обернуть прослушиватели событий в операторы if или нет каким-то образом ... не критиковать, как я устанавливаю логическую переменную. –

+0

Да, я это понимаю. Было больше нелепого комментария. – TheDude

ответ

0

Вы определили функцию flipBool(), но никогда не называли его, и вы должны переместить if(myBool){} в hover:

jQuery(document).ready(function(){ 

    flipBool();//reverses myBool 

    jQuery("div.someDiv").hover(function(){ 
      if(myBool){ 
       //will be executed only if myBool is originally false 
      } else { 
       //will be executed only if myBool is originally true 
      } 
    });   
}); 

DEMO: https://jsfiddle.net/erkaner/yqgL6hen/

+0

А я написал этот пример довольно быстро ... предположим, я его запустил. –

+0

@BradMash см. Обновление – renakre

+0

А я вижу, позволь мне дать это, спасибо, человек. Если это сработает, я сделаю вам лучший ответ: D –

Смежные вопросы