2014-10-28 63 views
0

我有一個頁腳彈出窗口,顯示頁面滾動一定的時間。我有一點點x,用戶可以點擊使頁腳消失。我試圖在點擊x時使用變量來使頁腳保持隱藏狀態。我無法像我想要的那樣工作,我想了解爲什麼。這裏是代碼:使用變量來控制事件

jQuery(function($) { 
    $(document).scroll(function(){ 
     var position = $(this).scrollTop(); 
     var fired = 0; 

     if(position < 360 && fired === 0){ 
      $('#popup').slideUp(); 
     } else { 
      $('#popup').slideDown(); 
     } 

     $('.close').on('click', function(){ 
      $('#popup').slideUp(); 
      fired = 1; // I thought that this was suppose to override the current variable 
     }); 
    }); 

}); 

那麼,爲什麼這不起作用?

回答

2

它不起作用,因爲您在滾動功能中聲明瞭var fired = 0;。所以無論何時用戶滾動,被觸發設置爲0.只需在滾動函數上面聲明它,那麼它就可以工作。

+0

是的!這很有道理。謝謝!我會將它標記爲答案(我必須等待12分鐘....) – dericcain 2014-10-28 19:49:52

0

Fired是滾動回調的局部變量,結果始終爲0.將它放在回調之外,它將保持一次設置。

jQuery(function($) { 
var fired = 0; 
$(document).scroll(function(){ 
    var position = $(this).scrollTop(); 
//...