-1

他の誰かがこのエラーメッセージを見たことがあります。グーグルで簡単にチェックしてもあまり表示されません。

4

4 に答える 4

2

あなたはおそらくこのようなことをしようとしています...

alert($("#myElement").tagName);

あなたはこれをするべきです...

alert($("#myElement")[0].tagName);
于 2008-09-17T16:11:35.620 に答える
1

ページがレンダリングされた後にスクリプトを実行していることを確認してください。スクリプトがページの上部にあり、すぐに実行され、DIV がそのスクリプトの下にある場合、DIV はまだ存在しません。

于 2008-09-17T16:53:51.353 に答える
1

IE でしか表示されない場合は、DivX Web プラグインのバグである可能性があります。

http://drupal.org/node/1038058

問題は DivX サイトで確認されており、「次のリリースで修正済み」(2011 年 4 月) と書かれています。

http://labs.divx.com/node/16824

基本的に、このバグは、DivX が el.appendChild() 関数を、タグ名を小文字にしようとするインターセプトに置き換えますが、それがテキスト ノードであるかどうかを確認することを気にしません。のようなことをしようとすると、jQuery が壊れます$('body').append('hi!')。さらに、SWFObject を壊す要素を返すのに失敗します。

回避策は、テキスト ノードまたは複数の最上位要素で append() を呼び出さないようにすることです。一連のアイテムを追加する場合:

  append($('<div>hi</div><div>there</div>')) 

暗黙のテキストノードを避けるために、それらを最上位の div でラップしてください。

  append($('<div><div>hi</div><div>there</div></div>')) 

appendChild壊れた場合の完全な回避策は次のとおりです。同じアプローチを使用でき、バグを共有していますinsertBeforereplaceChildDivx JS は、ページがロードされてからしばらく挿入されるため、これをポーリングすることをお勧めします。

window.fixDivxPlayerBug = function () {
    var b = document.getElementsByTagName('body')[0];
    if ( window['ReplaceVideoElements'] && ! b.appendChildDivx ){
        b.appendChildDivx = b.appendChild;
        b.appendChild = function (el) {
            if( el.tagName == null) {
                var wrap = document.createElement('div');
                wrap.appendChild(el);
                b.appendChildDivx(wrap);
            }
            else {
                b.appendChildDivx(el);
            }
            return el;
        };
    }
};
于 2011-04-12T19:46:46.913 に答える
0

申し訳ありませんが、これは私の側では、中途半端な質問でした。私は .js ファイルを調べて、コードのブロック全体を削除しています。私はそれを1つの特定の.jsファイルに分離しました。

この質問を読んで返信してくれてありがとう。

于 2008-09-17T18:02:23.937 に答える