首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery $(window).scroll和Internet Explorer (8-9)

jQuery $(window).scroll和Internet Explorer (8-9)
EN

Stack Overflow用户
提问于 2012-12-14 22:53:57
回答 2查看 13.5K关注 0票数 6

http://jsfiddle.net/CbL7W/滚动事件行为的示例。

我有这个脚本,可以在Chrome和Firefox中正常工作。

代码语言:javascript
复制
var stickyNavigationOffsetTop = $('.top-nav').offset().top;
var stickyNavigation = function () {
    var scrollTop = $(window).scrollTop();
    if (scrollTop > stickyNavigationOffsetTop) {
        $('.top-nav').css({ 'position': 'fixed', 'top': 0, 'left': 0, 'opacity': .8 });
    } else {
        $('.top-nav').css({ 'position': 'relative', 'opacity': 1 });
    }
};
stickyNavigation();
$(window).scroll(function () {
    stickyNavigation();
});

但是Internet Explorer有一个小问题:在同一个页面上,我有一个隐藏了div的脚本的链接,当发生这种情况时,有时页面会完全滚动回到页面的顶部,但当发生这种情况时,IE不会触发$(window).scroll

页面返回顶部时的问题屏幕截图。

Chrome (OK):http://i.stack.imgur.com/6WJx7.jpg

IE (错误):http://i.stack.imgur.com/CXbKk.jpg

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-22 00:28:59

我也有同样的问题,尽管我很不喜欢,但我的变通方法是在显示/隐藏div时触发window.scroll事件。$(Window)滚动(‘.trigger’);

票数 2
EN

Stack Overflow用户

发布于 2012-12-14 23:19:22

在此article上查看此答案

我认为改变

代码语言:javascript
复制
$(window).scrollTop() to 
$(document).scrollTop() 

可以解决IE问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13881008

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档