2012-10-25 109 views
0

這是關於使用jquery匹配分割寬度的問題。這是我正在使用的html代碼。與jquery匹配分割寬度

<ul class="thumbs_container"> 
<li class="thumbs"> 
    <a class="fancybox" href="" > 
     <div class="thumbs_image_container"> 
      <img src="" /> 
     </div> 
     <div class="caption"> 
      caption 
     </div> 
    </a> 
</li> 
    <li class="thumbs"> 
    <a class="fancybox" href="" > 
     <div class="thumbs_image_container"> 
      <img src="" /> 
     </div> 
     <div class="caption"> 
      caption 
     </div> 
    </a> 
</li> 
</ul> 

我將有多個類的'拇指'列表項。我想要做的是將div的寬度與類'caption'的寬度匹配到類'thumbs_image_container'的div的寬度,但分別對每個列表項進行處理。

有人請給我一些關於如何做到這一點的指針?我知道如何匹配寬度,但我有問題想辦法分開處理每個列表項目。

回答

0

嘗試使用$.each()

var $ulWidth = $('thumbs_container').width(); 

$('li.thumbs').each(function() { 

     var $divWidth = $(this).find('div.caption').width(); //Width of div inside Current li.. 

     if(parseInt($ulWidth) == parseInt($divWidth)) { 
      // Do Something 
     } 
}); 
0

使用jQuery的eachJquery $.each selector

此代碼將得到一套帶班大拇指元素,然後檢查每個元素都包含一類名爲標題,如果該元素不包含標題,則需要相關元素的寬度與class = thumbs_image_container並將其應用於迭代元素。

$('.thumbs').each(function(location, element){ 
if($(this).find('.caption').length){ 
    var w = $(this).find('.thumbs_image_container')[0].width(); 
    $(this).width(w); 
} 
}); 
0

感謝舒尚特和Travis,jQuery的每一個的伎倆,實驗後,這是我結束了它做什麼,我要怎樣做,

$('li.thumbs').each(function() { 
var $divWidth = 0; 
$divWidth = $(this).find('img').width(); 
$(this).find('div.caption').width($divWidth); 
}); 

事實證明,這是我需要匹配'標題'寬度的圖像的寬度。

感謝您的幫助