0
私はDojo Toolkitを学習しており、dojo/domReady!
に関するこの有線の問題に遭遇しました。私はこのよう作業例を持っている:有線dojo/domReady!動作
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Tutorial: Hello Dojo!</title>
<!-- load Dojo -->
<script>
var dojoConfig = {
async: true,
};
</script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dojo/dojo.js"></script>
</head>
<body>
<script>
require([
'dojo/dom',
'dojo/dom-construct',
'dojo/domReady!'
], function (dom, domConstruct) {
var greetingNode = dom.byId('greeting');
domConstruct.place('<em> Dojo!</em>', greetingNode);
});
</script>
<!-- <script src="./script.js"></script> -->
<h1 id="greeting">Hello</h1>
</body>
</html>
しかし、それは動作しません<h1 id...</h1>
前に、私は外部ファイルとソース、それをにJavaScriptコードを移動した場合。 (これは、コードがStackOverflowのの、ページ内のHTMLエディタで動作していることをとても奇妙です!)
require([
'dojo/dom',
'dojo/dom-construct',
'dojo/domReady!'
], function (dom, domConstruct) {
var greetingNode = dom.byId('greeting');
domConstruct.place('<em> Dojo!</em>', greetingNode);
});
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Tutorial: Hello Dojo!</title>
<!-- load Dojo -->
<script>
var dojoConfig = {
async: true,
};
</script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dojo/dojo.js"></script>
</head>
<body>
<script src="./script.js"></script> <!-- this position is not OK in my local machine-->
<h1 id="greeting">Hello</h1>
<!-- <script src="./script.js"></script> --> <!-- this position is OK-->
</body>
</html>
しかし、それは実際に私のローカルコンピュータ上で動作しませんでした、スクリーンショットを参照してください。 誰もがこれで私を助けることができますか?前もって感謝します! DOMの読み込みが完了するまで戻す前に待機します
<script>
require([
'dojo/dom',
'dojo/dom-construct',
'dojo/domReady!'
], function (dom, domConstruct) {
var greetingNode = dom.byId('greeting');
domConstruct.place('<em> Dojo!</em>', greetingNode);
});
</script>
ただ、基本的にはdojo/domReady!
<script>
var dojoConfig = {
async: true,
};
</script>
後とIMOはありませんでした:
2つのファイルをそのままコピー&ペーストしてApache Webサーバーで実行しました。あなたの例は私のために働く。おそらくあなたはキャッシングの問題にぶつかっているでしょうか?そして、どのバージョンのChromeですか? – user2867288
はい。キャッシュの問題であることを確認します。 Chromeでキャッシュを無効にした後で正常に動作します。 –