に私のソースコードをeventhandling上のオブジェクトの状態を取得します。ジャバスクリプト
<!doctype html>
<html>
<head>
<title>onload test</title>
<link type="text/css" rel="stylesheet" href="spot.css" media="screen" />
</head>
<body>
<h1>Welcome Page</h1>
<script>
debugger;
function constructScripts(url, callBack) {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = url;
document.getElementsByTagName("head")[0].appendChild(script);
if (script.readyState) {
script.onreadystatechange = function() {
if (script.readyState == "loaded" || script.readyState == "complete") {
script.onreadystatechange = null; callBack();
}
};
}
else {
script.onload = callBack;
}
}
</script>
<script>
debugger;
myCallBack = function() {
alert(this.src + "loaded");
}
constructScripts("files1", myCallBack);
constructScripts("files2", myCallBack);
constructScripts("files3", myCallBack);
</script>
</body>
</html>
this.srcは、ここに定義されていません。私はファイル名を読むことができるように、これはsrcプロパティを持つはずの 'スクリプト'オブジェクトでなければならないと思います。ここにいるのは誰ですか?また、ページソースを見ると、これらのスクリプトはheader()セクションには含まれていませんでした。それはなぜそうですか?ありがとう。
script.MyMethod(で
ルック)。空のメソッドを呼び出し、何もしません。 Element.prototype.MyMethod –
Owの意味は何ですか?私のブラウザでは問題ありません。 メソッドを拡張するためにプロトタイプと呼ばれています。 'document.createElement(" script "); '要素インスタンスを' script'が呼び出すと、私たちがMyMethodで拡張したElementオブジェクトを呼び出します。この関数の中では、callBackにscript.MyMethodを割り当てます。だから、 'script.MyMethod();'を 'script'で埋められたメソッドの中で呼び出すとき –