检测窗口只滚动一次Jquery

时间:2018-03-02 01:00:03

标签: jquery

我想在用户向下滚动200px后显示警告。单次,不多了。

{{1}}

使用此代码,警报随时出现,如何才能使其出现一次?我需要执行一个sql查询,但是使用这个当前代码,只要用户在页面中移动滚动,sql就可以执行很多次。

2 个答案:

答案 0 :(得分:2)

您可以在执行SQL代码之前或之后(我之后执行)unbind事件。

请参阅以下代码段。



$(window).scroll( function(){		
  	if($(this).scrollTop()>200){
    	  alert("SQL code executed"); 
          $(this).unbind("scroll");
  	}
  }
);

body {
  height:1800px;      
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

有一个你引用的布尔变量。如果这是真的,请不要再打电话。

var previousCalled = false;

$(window).scroll(function(){if($(this).scrollTop()>200 && !previousCalled){
                                alert("SQL code executed"); 
                                previousCalled = true;
                                }