jQueryを使用してdiv id #foo内の子要素(この場合はリスト要素)の数を数え、次に100 /(カウントされた子要素の数)。最後のステップは、パーセンテージベースの幅としてそれを適用することです。jQuery - 子供を数え、パーセンテージベースの幅を適用するには
<style="width: Npx">
N = [100 /(子要素の数)]?
jQueryを使用してdiv id #foo内の子要素(この場合はリスト要素)の数を数え、次に100 /(カウントされた子要素の数)。最後のステップは、パーセンテージベースの幅としてそれを適用することです。jQuery - 子供を数え、パーセンテージベースの幅を適用するには
<style="width: Npx">
N = [100 /(子要素の数)]?
これは(FOOの子供たちが存在しないとき、それはケースの面倒を)試してみてください:それは通常ベース%よりも優れている固定幅のコンテナを占めているので、最高のこのような
var el = $('#foo');
var len = el.children().length;
if(len > 0){
len = 100/len;
el.css("width", len + "px");
}
var count = $('#foo > *').length;
$('#bar').css({width:(100/count)+'%'});
$('someelement').width((100/$('#foo').find('li').length));
.length
は、ゼロ除算を避けるために、ゼロの場合は、チェックを行う必要があります。
<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>
を。私のコンセプトを改善するために+1! – Brian