Mel*_*Dog 2 javascript jquery internet-explorer cross-browser
我有这个代码:
$(window).scroll(function() {
var y_scroll_pos = window.pageYOffset;
var scroll_pos_test = 200;
if(y_scroll_pos > scroll_pos_test) {
$('.extratext').slideDown('slow');
}
});
Run Code Online (Sandbox Code Playgroud)
这适用于FF,Chrome和IE 10,但不适用于IE 9或更低版本.我已经研究过答案,他们都说它应该合作$(window)而不是平常$(document),这就是我所拥有的.
有谁知道另一种修改方法?
编辑:
添加console.log(y_scroll_pos);,它提出'undefined'.IE不喜欢window.pageYOffset;吗?
来自MDN文档:
对于跨浏览器兼容性,请使用window.pageYOffset而不是window.scrollY.此外,旧版本的Internet Explorer(<9)不支持任何属性,必须通过检查其他非标准属性来解决.
你总是可以使用jQuery的实现scrollTop(),它应该适用于所有浏览器:
$(window).scroll(function() {
var y_scroll_pos = $(this).scrollTop();
var scroll_pos_test = 200;
if(y_scroll_pos > scroll_pos_test) {
$('.extratext').slideDown('slow');
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12312 次 |
| 最近记录: |