2012-02-02 11 views
0

私はjQueryでそれほど良くないか、まったく良くありませんが、特定のテーブルのすべての画像を検索するjQuery/Javascript関数を作成する必要があります。だから、のcriteriasがこの表であるならば、私はTDが持っているかどうかを確認する必要があるので、jQueryを使ってテーブル内のすべての画像をループする

<table width="100%" class="ms-disc" dir="none" border="0" 
cellSpacing="0" cellPadding="1" summary="Forum"> 

(要約=フォーラム)の表は、属性「要約」 を持っている必要があり、それが「フォーラム」に等しくなければならないことですクラス "特定のクラス" <td class="ms-disc-bordered">。可能であれば、tdは別のテーブルになる可能性があり、テーブル内にはテーブルがあります。 これは重要ではなく、ネストされていることを知っているだけです。

次に、内部の画像のサイズを変更することができます。

は、今私はこのコードを持っている:

function ResizeImages() 
{ 
    jQuery(document).ready(function() 
    { 
     var table = $("").find() 
     table.each("td")(function() 
     { 
      if(hassummary & summary.equals("forum")) 
      { 
       var img=table.find("image") 
       img.height=""; 
       img.weight=""; 
      } 
     } 
    } 
} 

UPDATE: はので、これは階層です:

<table summary="forum"> 
..... 
    <table> 

     <table> 
      <tr> 
       <td class="particular class"> 
        <a link> 
         <image> the one i need to get</image> 
        </a> 
       </td> 
      </tr> 
     </table> </table></table> .... 
+0

まず、画像に何らかの形でマークする方法はありませんか? 2番目: 'img'は' summary = forum'という属性を持つ 'table'の中で(入れ子になった)' td.particularClass'の中に常に(ネストされて)いると正しく述べていますか? –

+0

マークアップを表示してください。 – adarshr

+0

ネストされたテーブルが '​​'とマークされている場合にのみ参照する必要がある場合は、それはかなり重要です – Alnitak

答えて

1

jQueryのコードを検索するために、あなたの画像は:

$('table[summary="forum"] td.particular.class img').attr({ 
    height: '', 
    width: '' 
}); 

このコードの有用性にもかかわらず、私はあなたにとって最も重要な部分はjQueryセレクタを理解することだと思います。セレクタは、このサブセレクタで構成されています

  • テーブルsummaryという名前の属性を持つ[要約=「フォーラム」]検索すべて<table>要素が"forum"に等しいです。
  • td.particular.class検索持つすべての要素<td>両方のクラスparticularclass
  • IMG検索すべて<img>要素。

サブセレクタはスペースで区切られています。つまり、<img>要素は<td>要素内に配置する必要があり、これらは要素<table>内に配置する必要があります。その他の詳細は、jQuery selectorsの完全な文書に記載されています。

正しい<img>要素を見つけたら、attr()関数を使用してその属性を設定できます。

+0

に入れますとにかくすべての画像でそれぞれが実行されますか? – Alnedru

+0

マッチした要素のセットのすべてのアイテム(つまり、テーブルのすべてのイメージ)に適用されます。 – frm

4

これはそれを行う必要があります。

$('table[summary=forum] td.particular.class img').each(function(){ 
    $(this).width(w).height(h); 
}); 
+0

うん、それはしませんが、それは正しいテーブルを取得しますか?そして、tdは同じテーブルにないかもしれませんが、(マークアップ=フォーラム) – Alnedru

+0

のテーブルに入れ子になっている次のテーブルに、更新マークアップがあるので、上記の新しいセレクターは – jerjer

関連する問題