我对javascript几乎是全新的,我知道这里已经有类似的问题,但我希望脚本可以用于。
if(用户位于页面顶部) { (执行此功能) }
提前致谢
答案 0 :(得分:0)
这是我用来确定页面滚动顶部的一小段,我不记得我从哪里得到它,或者我是否自己编写了它,所以不能归功于它。
var st=0;
if(typeof pageYOffset!= 'undefined'){
//most browsers
st = pageYOffset;
} else {
var B = document.body; //IE 'quirks'
var D = document.documentElement; //IE with doctype
D = (D.clientHeight)? D: B;
st = D.scrollTop;
}
如果st == 0则用户位于页面顶部!
答案 1 :(得分:0)
我正在使用一个函数使其跨浏览器兼容,可在此处找到:Cross-browser method for detecting the scrollTop of the browser window
function getScrollTop(){
if(typeof pageYOffset!= 'undefined'){
//most browsers
return pageYOffset;
}
else{
var B= document.body; //IE 'quirks'
var D= document.documentElement; //IE with doctype
D= (D.clientHeight)? D: B;
return D.scrollTop;
}
}
if(!getScrollTop()){
// user is at the top
}
这是一个小小的演示:http://jsfiddle.net/uDS4n/1/
答案 2 :(得分:0)
这是一个干净的解决方案,如果你是JS的新手,应该有意义:
//call your function on scroll
window.onscroll = myScrollFunction;
function myScrollFunction(){
if(getYOffset() == 0){
//if at top, do this
alert('bingo');
}
};
//helper function (since ie handles scrolling different than firefox)
function getYOffset() {
var pageY;
if(typeof(window.pageYOffset)=='number') {
pageY=window.pageYOffset;
}
else {
pageY=document.documentElement.scrollTop;
}
return pageY;
}