2011-01-24 15 views

答えて

2

これは(FOOの子供たちが存在しないとき、それはケースの面倒を)試してみてください:それは通常ベース%よりも優れている固定幅のコンテナを占めているので、最高のこのような

var el = $('#foo'); 
var len = el.children().length; 
if(len > 0){ 
    len = 100/len; 
    el.css("width", len + "px"); 
} 
+0

を。私のコンセプトを改善するために+1! – Brian

1
var count = $('#foo > *').length; 
$('#bar').css({width:(100/count)+'%'}); 
3
$('someelement').width((100/$('#foo').find('li').length)); 

.lengthは、ゼロ除算を避けるために、ゼロの場合は、チェックを行う必要があります。

0
<html> 
<head> 
    <script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.4.min.js" 
type="text/javascript"></script> 
</head> 
<body> 
    <div id="foo"> 
     <ul> 
      <li>Baseball</li> 
      <li>Basketball</li> 
      <li>Football</li> 
      <li>Soccer</li> 
      <li>Hockey</li> 
     </ul> 
    </div> 
    <script type="text/javascript"> 
     $(function() { 
      var sWidth = "auto"; 
      var liLength = $("#foo li").length; 
      alert(liLength); 
      if (liLength > 0) { 
       sWidth = (100/liLength) + "%"; 
      } 
      $("#foo").width(sWidth); 
      alert(sWidth); 
     }); 
    </script> 
</body> 
</html> 
関連する問題