2011-07-20 25 views
1

IE8デバッガを使用して、FF 3.16とChrome 12.0でうまくいくスクリプトを修正していますが、IE 8.0またはSafari 5.0のBeanでは機能しません。私に迷惑を与えているスクリプト内のスポットはここにある:IE8 JavaScriptデバッガ:DOMツリーはどこですか?

enter image description here

私はそのchildren[0]データの最初の行であるtable id="main_tbody"<td>秒の数を見つける必要があります。 FFとChromeはこれを完全に理解しています。 IE 8とSafari 5はそうではありません。

私はIE 8デバッガのDOMツリーを見て、何が起こっているのか見たいと思っています。しかし、私は見つけることができない鼎洞DOM、ダングそれを見つける!

So: IE 8デバッガのDOMですか?

< ahem!>:私のJSコードで何が問題になっていますか?

ありがとうございます!

EDIT:私はテーブルが次のように設定されていることを述べておく必要があります。

<table id ="main"> 
<tbody id="main_tbody"> 

そしてtable id ="main"tbody id="main_tbody"への参照は、このように初期化されています

main     = getRefToDiv('main');    
    main_tbody   = getRefToDiv('main_tbody'); 
+1

コンソールにエラーメッセージが表示されていて、テーブルに「main_tbody」という名前も付けられていますか?あなたはdocument.getElementByIdを使用していないようです。 –

+0

@ K.A.Gありがとうございました。明確な編集をご覧ください。私はそれを間違っているのですか? –

+0

@ K.A.G - いいえ、コンソールメッセージはまったくありません。 –

答えて

0

信じられないほどです。 quirksmodeによると、ie8はchildElementCountを実装することができません。それは、それが戻ってきていることなので、私はそれを信じています。そこでループを新しい終了条件に書き換えます。これはうんざりです。今は、私が探していた要素だけでなく、コメントやその他のものを含め、すべての子供たちを手に入れようとしているからです。信じられないほど。 FYI、IE8もをpreviousElementSibling nextElementSibling、をlastElementChild、または、firstElementChildを実装していません。

+1

Lol。 IEは大した問題です。正直なコメントの場合は –

+0

+1、卑劣なウナギ。 –

1

コールposition_col_headsを( )関数の後ろ</body> 私の疑惑は、この関数がheadタグ内で宣言されているか、ブラウザがレンダリングする前に呼び出されているということですボディの内容

これを試してみてください。

... 
    ... 
    </body> 
    <script type='text/javascript'> 
    position_col_heads();//Set breakpoint here and see if its accessible. 
    </script> 
</html> 

また、あなたはあなたの時計式にmain.children [0]とmain_tbody.innerHTMLのために何を得るの応答参照してください。

関連する問題