Jquery - 在命中div时添加滚动类 - IE和Firefox问题

时间:2015-04-04 22:43:16

标签: javascript jquery html css firefox

我是在我的个人网站工作,我是一名平面设计师,所以编码不是我的强项,我一直在寻找答案,但我想我的问题可能更具体一点:

问题很简单,这是我网站的链接:http://irvingtesting.byethost5.com/index.html

(是的,我有一堆乱七八糟的脚本:()

特别是我有这个jquery代码:

$(document).ready(function(){
    var aChildren = $("nav div li").children(); // find the a children of the list items
    var aArray = []; // create the empty aArray
    for (var i=0; i < aChildren.length; i++) {    
        var aChild = aChildren[i];
        var ahref = $(aChild).attr('href');
        aArray.push(ahref);
} // this for loop fills the aArray with attribute href values

$(window).scroll(function(){
        var windowPos = $(window).scrollTop(); // get the offset of the window from the top of page
        var windowHeight = $(window).height(); // get the height of the window
        var docHeight = $(document).height();

        for (var i=0; i < aArray.length; i++) {
            var theID = aArray[i];
            var divPos = $(theID).offset().top; // get the offset of the div from the top of page
            var divHeight = $(theID).height(); // get the height of the div in question
            if (windowPos >= divPos && windowPos < (divPos + divHeight)) {
                $("a[href='" + theID + "']").addClass("nav-active");
            } else {
                $("a[href='" + theID + "']").removeClass("nav-active");
            }
        }

        if(windowPos + windowHeight == docHeight) {
            if (!$("nav div li:last-child a").hasClass("nav-active")) {
                var navActiveCurrent = $(".nav-active").attr("href");
                $("a[href='" + navActiveCurrent + "']").removeClass("nav-active");
                $("nav div li:last-child a").addClass("nav-active");
            }
        }
    });
});

它在谷歌浏览器上运行得很好,但在IE和Firefox中,.active类不会工作,直到滚动位置就像​​在Div的中间一样 在这种情况下#xportfolio是一个部分。

(我正在使用Skeleton进行响应)

谢谢。

1 个答案:

答案 0 :(得分:0)

我无法回答这个问题,我有Firefox 37.0,Firefox开发版39.0a2(2015-04-06)和谷歌44.0.2358.0金丝雀(64位)和它的工作原理类似(使用桌面和响应工具)。 / p>

我在MDN和Jquery中建议,阅读和学习。 https://developer.mozilla.org/en-US/ https://api.jquery.com/scrollTop/