2011-01-21 11 views
0

幅70%のTDを持つテーブルを見つけて、プレーンJavascriptを使用してCSSを追加できますか?Javascript - TD幅= "70%"を探してCSSを追加

テーブルはIDを持っていませんが、IDを持つDIV内にネストされています。

HTML:

<div id="MainContent"> 
    <table width="100%"> 
    <tr> </tr> 
    <tr> </tr> 
    <tr> 
     <td> 
     <table width="100%"> 
      <tr> 
      <td width="70%"> 
       .... 
      </td> 
      </tr> 
     </table> 
     </td> 
    </tr> 
..... 

ので#MainContentテーブルTHIRD-TR FIRST-TD TABLE TR TD

任意のアイデアと感謝助けて!

+1

私はあなたが非意味論的な方法でテーブルを使用していないことを願っていますが、そうではないようです。誰かがelsesコードですか? – zzzzBov

+0

CSSをJavaScript経由で追加する必要がありますか?そうでない場合は、あなた自身の提案が、この特定のテーブルのCSS3スタイルを完全に実行できるようにします。 – bzlm

+0

これは私のコードだった場合、私は数ヶ月前にそれを終了しませんでした。悲しいことに、この顧客はまだIE6をサポートしたいので、CSS3はオプションではありません。 – CLiown

答えて

0

取得しようとしているテーブルはどれですか?これは最初のものを取得する必要があります:

document.getElementById('MainContent').getElementsByTagName('table')[0]; 

しかし、これは第二1を取得する必要があります:

var tds = document.getElementsByTagName('td'), 
i = tds.length; 
while (i) { 
    i -= 1; 
    if (tds[i].width === '70%') { 
     tds = tds[i]; 
     break; 
    } 
} 
do { 
    tds = tds.parentNode; 
} while (tds.nodeName !== 'TABLE') 

このすべての終わりには、tdsはその70%の親である最初のテーブルでなければなりませんtd。

+0

JQueryを使わずにこのコードを作成してもいいですね。 –

関連する問題