[英]Detecting scroll in jquery and change the operations
我有一个这样的jQuery叠加。 当页面加载时,将显示如下。
当用户再次单击“关闭”或“反馈”按钮时,它将返回到其位置。
功能就是这样。 现在,当用户滚动页面时,它应该自动返回其位置。 Onload我正在写这个jquery代码来执行这个操作,调用关闭按钮reset()
onclick。 反馈slideme()
onclick被调用。 所以我的问题是,当用户向下滚动页面时,该叠加层应返回原位。 如何检测用户滚动并执行此操作?
$(document).ready(function()
{
SlideMe();
$('body').keypress(function(e)
{
if(e.keyCode == 27)
{
reset();
}
});
});
function SlideMe()
{
if(document.getElementById('hdnFBStats').value == 1)
{
document.getElementById('hdnFBStats').value =0;
reset();
return false;
}
$lngDocWidth = ($(document).width()/3)+32;
$('#overlay').fadeIn('fast',function(){
$("#fb").animate({marginRight:$lngDocWidth}, 1500);
});
$("#feedbackimg").css("margin-right", '100px');
$("#feedbackimg").css("float", 'right');
document.getElementById('hdnFBStats').value= 1;
}
function reset()
{
$("#fb").css('margin-right', '0px');
$('#overlay').fadeOut('fast');
}
您可以使用jQuery的$(window).scroll()
事件
如果选项卡实际上是打开的,这只会进行滚动检查。
$(window).scroll(function() {
if(document.getElementById('hdnFBStats').value == 1) {
document.getElementById('hdnFBStats').value = 0;
reset();
} else {
if($(window).scrollTop() == 0) {
SlideMe();
document.getElementById('hdnFBStats').value = 1;
}
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.