script.js に保存された次のスクリプトを検討してください。
if ((typeof window.jQuery) == "undefined") {
var js = document.createElement("script");
var he = document.getElementsByTagName('head')[0];
js.type = "text/javascript";
js.src = "http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js";
he.appendChild(js);
}
$('document').ready(function(){
alert('testing');
});
次に、次のような基本的な html ページ:
<html>
<head>
</head>
<body>
</body>
</html>
<script src=script.js></script>
これにより、エラーが発生します。
ReferenceError: $ が定義されていません
script.js
行 8
$ が定義されていないのはなぜですか? 最初に if の間にコードがあり、次に code がありますready()
。これは、ドキュメントがロードされたときに呼び出されるコールバック関数のコードをキューに入れますか?
Firebug でコードを見ると、jQuery が正しく読み込まれています。これは の後に起こりdocument.read
ますか? それとも私がここで見逃した何かですか?