0

もっとわかりやすいタイトルが思いつかなかったので、それが理にかなっていることを願っています (間違っている場合は遠慮なく訂正してください)。

基本的に、サイトにテーブルを追加すると、追加される列の量に応じて列のサイズが自動的に変更されます。単一の追加は完全にうまく機能しますが、同じページに追加のテーブルを追加するとすぐに、少し複雑になります (おそらく頭を悩ませています)。実行されるスクリプトは、すべての列を完全にカウントします。
たとえば、ページの上部に 3 列のテーブルを追加し、下部に 3 列のテーブルを追加すると、スクリプトは合計 6 列をカウントし、100 をその数値で割ります。

下部のスクリプトが個別のテーブルを検出し、テーブルごとに列のサイズを変更するように、変数またはテーブル数を作成する簡単な方法はありますか?

以下のコードのスニペット:

<div class="table<?php echo $tblid; ?>">
        <div class="cols">
        </div>

    ..code going on here..
        <div class="cols">
        </div> 
    ..Some more code going on here..
</div>

    var v = jQuery('.table .cols').length;

    var cw = (100/v);

    jQuery('.table .cols').css('width',cw+'%');

4

1 に答える 1

1

私が間違っていなければ、あなたは同じ classname を持つ2つのテーブルを持っているので、セレクターjQuery('.table .cols')は両方のテーブルを取得し、両方のテーブル jQuery('.table .cols').length;を組み合わせた列の長さを提供します...

あなたにできることは。彼らに別々のクラスを与えて、それぞれに電話してください..

HTML

 <div class="table1">
    <div class="cols">
    </div>

  ..other code going on here..

</div>

<div class="table2">
    <div class="cols">
    </div>

  ..other code going on here..

</div>

Jクエリ

jQuery(function(){
  jQuery('div[class^="table"]').each(function(){
    var obj=jQuery(this).find('.cols');
    var v = obj.length;
    var cw = (100/v);

    obj.css('width',cw+'%');
  });
});

これは、任意の数のテーブルで機能するはずです..

于 2013-02-15T06:25:08.183 に答える