1

私はJQueryに少し慣れていないので、これが明らかな場合はご容赦ください。

このコードを実行して、ユーザーが 1 ページを上下にスクロールするときに、「アクティブな」クラスを固定ナビゲーション バー リスト項目に追加/削除します。Chrome と IE では動作しますが、Firefox では動作しません。理由を知っている人はいますか?

ありがとう!

// #div ids for page content
$(this).ready(function(){
var section0Height = $('#home').height();
var section1Height = $('#mission').height();
var section2Height = $('#services').height();
var section3Height = $('#team').height();
var section4Height = $('#contact').height();


// #li ids for nav items
$(window).scroll(function() {
    var winTop = $(window).scrollTop();
    if(winTop >= section0Height && winTop <= section1Height){
        $('#section0').addClass("active").not().removeClass("active");
    } else if(winTop >= section1Height && winTop <= section2Height){
        $('#section1').addClass("active").not().removeClass("active");
    } else if(winTop >= section2Height && winTop <= section3Height){
        $('#section2').addClass("active").not().removeClass("active");
    } else if(winTop >= section3Height && winTop <= section4Height){
        $('#section3').addClass("active").not().removeClass("active");
    } else if(winTop >= section4Height){
        $('#section4').addClass("active").not().removeClass("active");
    } 
  });
});
4

2 に答える 2

2

交換

$(this).ready(function(){ ...

$(document).ready(function(){ ...

jQuery .ready()

.ready() メソッドは、現在のドキュメントに一致する jQuery オブジェクトでのみ呼び出すことができます

パラメータがないと何もしないという事実以外not()に、投稿されたコードが機能しないことを私が見つけることができる唯一の理由はありますか?

于 2013-02-27T19:41:28.203 に答える