我的网站上有这个简单的jQuery自动滚动代码

    $('body[data-pagecontroller="profile"],body[data-pagecontroller="search"]').animate({
    scrollTop: $("#ipsLayout_body").offset().top -65
}, 1000);


基本上,如果主体中存在选择器,则可以简单地自动滚动到ipsLayout_body,虽然它可以在Microsoft Edge,Chrome,Opera上正常运行,但在IE9和firefox上不行?

最佳答案

我假设Firefox在数据属性和动画方面存在一些问题,但是我始终使用“ html,body”为所需的元素设置动画,如下所示:

/* IF body[data-pagecontroller="profile"] OR
 body[data-pagecontroller="search"] Exists */
if($('body[data-pagecontroller="profile"]').length > 0 || $('body[data-pagecontroller="search"]').length > 0){
    $('html,body').animate({scrollTop: $('#ipsLayout_body').offset().top -65 },1000);
}


希望这可以帮助 !

狮子座

10-05 20:51
查看更多