我正在寻找一种方法来检测按%而不是px滚动的页面数量,请考虑:
function doBanner() {
var scrollPos = $( window ).scrollTop();
if ( scrollPos > 250 && !uped && !doing){
up();
} else if ( scrollPos <= 250 && !doing && uped ) {
down();
}
基本上这是网页上弹出横幅的一部分,一旦用户滚动250px,横幅就会弹出,一旦用户滚动回到250px,它将再次弹出(高度0,高度40)或从顶部开始。
此方法存在的问题是,在某些页面上,用户无需滚动250px即可查看页面上的所有内容,因此不会显示横幅。
我可以考虑任何建议/替代方案吗?
如果你知道使用%而不是px的方法,那就太好了:)
答案 0 :(得分:1)
我会根据当前窗口大小计算基数的百分比。
您可以使用jQuery的函数width
和height
来获取这些值:
var windowsWidtdh = $(window).width();
var windowsHeight = $(window).height();
然后你可以这样做:
var scrolledPercentage = (scrollPos * 100) / windowsHeight;