我想在用户向下滚动200px后显示警告。单次,不多了。
{{1}}
使用此代码,警报随时出现,如何才能使其出现一次?我需要执行一个sql查询,但是使用这个当前代码,只要用户在页面中移动滚动,sql就可以执行很多次。
答案 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;
答案 1 :(得分:0)
有一个你引用的布尔变量。如果这是真的,请不要再打电话。
var previousCalled = false;
$(window).scroll(function(){if($(this).scrollTop()>200 && !previousCalled){
alert("SQL code executed");
previousCalled = true;
}