2013-10-19 55 views
0

這個jQuery代碼工作很好,但我想實現一個固定點,我想用一個相對點,以取代510,從CSS:#內容如何解決jquery noConflict與aboveHeight?

var _rys = jQuery.noConflict(); 
      _rys("document").ready(function() { 
       _rys(window).scroll(function() { 
        if (_rys(this).scrollTop() > 510) { 
         _rys('.navigation').addClass("fixed"); 
        } else { 
         _rys('.navigation').removeClass("fixed"); 
        } 
       }); 
      }); 

我轉換的代碼,但它不工作,我不知道爲什麼:) 感謝您的幫助提前。

jQuery(document).ready(function() { 
var aboveHeight = $('header').outerHeight(); 
$(window).scroll(function(){ 
     if ($(window).scrollTop() > aboveHeight){ 
       $('.navigation').addClass("fixed"); 
        } 
     else { 
       $('.navigation').removeClass("fixed"); 
        } 
     }); 
    }); 

工作版本:感謝迪內希·庫馬爾DJ

jQuery(window).load(function() { 
var aboveHeight = jQuery('#content').offset().top; 
      console.log(jQuery('#content')); 
jQuery(document).scroll(function(){ 
    if (jQuery(window).scrollTop() > aboveHeight){ 
     jQuery('.navigation').addClass("fixed"); 
    } else { 
     jQuery('.navigation').removeClass("fixed"); 
    } 
}); }); 

回答

0

全部替換$的jQuery,它會正常工作,

jQuery(document).ready(function() { 
    var aboveHeight = jQuery('header').outerHeight(); 
    jQuery(window).scroll(function(){ 
     if (jQuery(window).scrollTop() > aboveHeight){ 
      jQuery('.navigation').addClass("fixed"); 
     } else { 
      jQuery('.navigation').removeClass("fixed"); 
     } 
    }); 
}); 
+0

幹得好,它工作正常,但我有一個小問題,當我添加這個:$('#content')。outerHeight();它沒有正確地做到這一點......並非常感謝你 –

+0

你必須通過像jQuery('#content')這樣的參數來傳遞true。outerHeight(true);爲了獲得正確的高度也要增加邊距。 –

+0

我從我的原始頁面創建了一個示例:http://jsfiddle.net/Hmb4U/不想正常工作...我沒辦法在Lorem之後想要粘,但在Lorem結束後顯示 –