2012-10-08 29 views
1

我是編程的新手,所以我真的需要你的幫助。我需要改變一些代碼來滿足我的需求,而我似乎無法以適當的方式去做。我現在需要的是在$(window).width> 480時使用此腳本並使其工作。另外,每次用戶調整窗口大小時,都需要運行此腳本。菜鳥:window.onresize需要

我爲我的愚蠢問題表示歉意,但我剛開始學習關於Javascript和Jquery的基礎知識,而且我似乎無法找到這個問題的答案。

下面是代碼

 $(window).load(function(){ 
    (function($) { 

     $.fn.eqHeights = function() { 

      var el = $(this); 
      if (el.length > 0 && !el.data('eqHeights')) { 
       $(window).bind('resize.eqHeights', function() { 
        el.eqHeights(); 
       }); 
       el.data('eqHeights', true); 
      } 
      return el.each(function() { 
       var curHighest = 0; 
       $(this).children().each(function() { 
        var el = $(this), 
         elHeight = el.height('auto').height(); 
        if (elHeight > curHighest) { 
         curHighest = elHeight; 
        } 
       }).height(curHighest); 
      }); 
     }; 

     $('.articles_container').eqHeights(); 

    }(jQuery)); 
    }); 

回答

0

要執行它的窗口大小,這樣做:

$(window).resize(function() { 
    $('.articles_container').eqHeights(); 
} 

另外,如果你想執行JavaScript在媒體查詢事件,然後用甜enquire.js JavaScript庫。

+0

尼爾森,非常感謝你的快速回復!當舞臺寬度大於480像素時,我也需要腳本運行。我想提出一些Javascript媒體查詢(如果你能比較這兩個非常不同的東西)。 無論如何,我試圖實現你的建議,但沒有成功。我是一個初學者,所以我一定在這裏做錯了什麼... –

+0

enquire.js庫會對你很有幫助,看到我更新的答案。 – Nelson

0

該窗口有一個.innerWidth屬性,我認爲它仍然可以通過jQuery訪問。所以你的代碼可能是這樣的:

$(window).resize(function() { 
    if($(window).innerWidth < 480) return; 
    $('.articles_container').eqHeights(); 
}) 
+0

和@Nelson的一樣,但有條件... – urbananimal

+0

非常感謝你,urbananimal!所以,我應該只替換[$('。articles_container')。eqHeights(); ]與你在那裏寫的代碼? –

+0

是的。這應該做到這一點。我認爲。 – urbananimal