为什么jQuery不能监听document.body的滚动事件呢?
为什么jQuery不能监听document.body的滚动事件呢?今天发现这句代码没效果:$(document.body).scroll(function(e){aler...
为什么jQuery不能监听document.body的滚动事件呢?今天发现这句代码没效果:$(document.body).scroll(function(e) { alert('我滚动了');});请教各位大侠,这是为什么呢?
展开
4个回答
展开全部
<script type="text/javascript">
window.onbeforeunload= function () {
return "关闭网页"; //关闭网页时的弹窗
}
window.onscroll= function () {
alert("页面滚动");
}
window.onresize= function () {
alert("页面大小改变了");
}
window.onmousewheel= function () {
alert("鼠标滚动了");
}
</script>
window.onbeforeunload= function () {
return "关闭网页"; //关闭网页时的弹窗
}
window.onscroll= function () {
alert("页面滚动");
}
window.onresize= function () {
alert("页面大小改变了");
}
window.onmousewheel= function () {
alert("鼠标滚动了");
}
</script>
2013-05-27
展开全部
这个问题问得好,
不过它跟jQuery貌似没什么关系,
跟BOM和DOM是有关系的。
不过它跟jQuery貌似没什么关系,
跟BOM和DOM是有关系的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-08-09
展开全部
这个问题问得好,不过它跟jQuery貌似没什么关系,跟BOM和DOM是有关系的。用基于miniYUI轻量级框架的JS来测试一下各大主流浏览器下window和document以及document.body上的滚动事件,得出以下结论:[*]几乎所有浏览器都不支持在document.body上监听整个网页的滚动事件,除了QQ浏览器;[*]几乎所有浏览器都支持在window对象上监听整个网页的滚动事件;[*]几乎所有浏览器都支持在document对象上监听整个网页的滚动事件,除了QQ浏览器;[*]几乎所有浏览器都支持用document.documentElement.scrollTop来获取网页的滚动高度,除了Chrome和Safari;[*]只有Chrome和Safari支持用document.body.scrollTop来获取网页的高度;主要测试的浏览器:IE 9,Firefox 12.0,Chrome 20.0.1132.11,Safari 5.1.2,QQ浏览器 6.13通过测试,我们得出获取网页滚动高度scrollTop的最佳实践为:[*]把获取滚动高度的事件处理程序绑定到window对象上;[*]通过获取document.documentElement.scrollTop和document.body.scrollTop两者之间较大值为网页的真实滚动高度。基于miniYUI的测试示例代码如下:miniYUI.event.on(window, 'scroll', function(e) { alert(Math.max(document.body.scrollTop, document.documentElement.scrollTop));});
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$(window).scroll(function(){})
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询