悬停时检测 scrollTop()(手持设备)
Detect scrollTop() when hovered (handheld device)
我正在使用 jQuery 的 scrollTop() 作为固定菜单:
function fixed_menu(){
if( $('window').width() < 770 )
{
var menu = $('.col-left.sidebar');
var offset = menu.offset();
var trigger = offset.top;
$(document).scroll(function(e){
if($('body').scrollTop() >= trigger){
menu.addClass('fixed');
} else if ($('body').scrollTop() < trigger){
menu.removeClass('fixed');
}
});
}
}
fixed_menu();
当我自己测试时 phone(android 设备,第二代 Moto G),if 语句在滚动时仍然有效。
当我在 iPad mini 上进行测试时,if 语句仅在悬停完成时启动。
如何在某些 iOS 设备上使用此功能,同时悬停仍在进行中?
scrollTop()
函数在不同的浏览器中有问题。您可以尝试 $('html, body').scrollTop()
和 $(window).scroll()
function fixed_menu(){
if( $('window').width() < 770 ){
var menu = $('.col-left.sidebar');
var offset = menu.offset();
var trigger = offset.top;
$(window).scroll(function(e){
if($('html, body').scrollTop() >= trigger){
menu.addClass('fixed');
} else if ($('html, body').scrollTop() < trigger){
menu.removeClass('fixed');
}
});
}
}
fixed_menu();
我正在使用 jQuery 的 scrollTop() 作为固定菜单:
function fixed_menu(){
if( $('window').width() < 770 )
{
var menu = $('.col-left.sidebar');
var offset = menu.offset();
var trigger = offset.top;
$(document).scroll(function(e){
if($('body').scrollTop() >= trigger){
menu.addClass('fixed');
} else if ($('body').scrollTop() < trigger){
menu.removeClass('fixed');
}
});
}
}
fixed_menu();
当我自己测试时 phone(android 设备,第二代 Moto G),if 语句在滚动时仍然有效。
当我在 iPad mini 上进行测试时,if 语句仅在悬停完成时启动。
如何在某些 iOS 设备上使用此功能,同时悬停仍在进行中?
scrollTop()
函数在不同的浏览器中有问题。您可以尝试 $('html, body').scrollTop()
和 $(window).scroll()
function fixed_menu(){
if( $('window').width() < 770 ){
var menu = $('.col-left.sidebar');
var offset = menu.offset();
var trigger = offset.top;
$(window).scroll(function(e){
if($('html, body').scrollTop() >= trigger){
menu.addClass('fixed');
} else if ($('html, body').scrollTop() < trigger){
menu.removeClass('fixed');
}
});
}
}
fixed_menu();