20

以下は私のYWAラッパーのコードです

var astr_ywascript = (document.createElement("script").type = "text/javascript").src = "http://d.yimg.com/mi/eu/ywa.js";
document.head.appendChild(astr_ywascript); // <- error on this line

ページの読み込み時に実行されるため、JS がドキュメントの head タグを見つけられないのは意味がありません。

何か案は?

ありがとう


Opera は同じ行でこのエラーをスローします。Uncaught exception: Error: WRONG_ARGUMENTS_ER Firebug さんのコメント:document.head is undefined [Break On This Error] document.head.appendChild(astr_ywascript);

4

3 に答える 3

16

ラインで

(document.createElement("script").type = "text/javascript").src

文字列の src プロパティを設定しています。括弧内の割り当ては、割り当てられた値を返します。ラインの後半で同じ間違いを犯し、最終的"http://d.yimg.com/mi/eu/ywa.js"にはastr_ywascript

それを別々の行に分割します。

var el=document.createElement("script");
el.type="text/javascript"
el.src=...
document.head.appendChild(el);

生の Javascript が、jQuery で慣れ親しんだ流動的な方法で動作することはめったにありません。

次のようにヘッドを取得することもできます。

document.getElementsByTagName("head")[0]
于 2011-01-07T09:25:05.833 に答える
8

私がやっていたため、Backbone.jsでこのエラーが発生しました:

$('#backbone').html(@view.render())

それ以外の

$('#backbone').html(@view.render().el)

私がすべきだったように。この「エル」ビジネスが何であるかはまだよくわかりませんが、すぐにわかると思います。

于 2011-09-23T22:01:07.700 に答える
0

“Uncaught Error: NOT_FOUND_ERR: DOM Exception 8エラーへの回答を検索しているときに行ったように、このページにアクセスする可能性のある人のために、この回答を追加するだけです。

Chromeでこのエラーが発生しました。私の場合、私は使用していました.appendChild(ttt);

問題は、ttt追加するつもりだった div ではなく配列オブジェクトだったことです。

したがって、追加するものが実際に DOM オブジェクトであり、誤って別のオブジェクト タイプではないことを確認してください。

于 2013-08-01T08:06:32.923 に答える