javascript - jQuery animate scrollTop 在 firefox 中不起作用

标签 javascript jquery html css firefox

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

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

基本上,如果选择器存在于 body 中,一个简单的自动滚动到 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);
}

希望对您有所帮助!

狮子座。

关于javascript - jQuery animate scrollTop 在 firefox 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39938015/

相关文章:

javascript - 无法获取 touchstart 事件的属性?

php - 将 javascript 与 Twitter API 结合使用

javascript - ASP.NET mvc angularjs 未知提供程序错误

jquery - bootstrap 3轮播异常: blank content appears when go "prev" before the 1st slider item,但只要点击 "next"就可以正常工作

html - 在 HTML 5 中单击图像时添加声音

javascript - 单引号 JSP 到 JavaScript 函数

javascript - iOS 文本区域在滚动后停止工作

像 Yahoo Pipes 这样的 Javascript GUI

javascript - 为什么需要在 RxJs 中导入运算符?

jquery - 如何在 asp.net 中使用 jQuery UI 自动完成