3

index.htmlにこの非常に単純なコードがあります

<script src="../../dojo/dojo.js"></script>
<script>
    dojo.require("dojo.fx");
    dojo.ready(function(){
        dojo.byId("greeting").innerHTML += ", from " + dojo.version;
        dojo.fx.slideTo({
            top: 100,
            left: 200,
            node: dojo.byId("greeting")
        }).play();
    });
</script>

エラー Error: Could not load 'dojo.fx'; が表示されます。最後に試した「./fx.js」

注: dojo のディレクトリー構造は変更していません。私は道場1.6を使用しています

-dojo
-dijit
-dojox
-labs
 -ex01
  -index.html
4

2 に答える 2

1

問題は、dojo がローカルのファイルシステムから実行されないことでした。

Web サーバーが開発マシンで実行されている場合でも、ファイル システムではなく、Web サーバーからソース コードを実行します。ブラウザーがローカル ファイル システムからの HTTP 要求を処理する場合、同じマシンで実行されている場合でも、Web サーバーからの HTTP 要求よりも制限が厳しくなります。一貫した結果を得るには、常に任意の HTTP Web サーバー (Apache、nginx、Tomcat、IIS、Jetty など) 内から Dojo を実行する必要があります。

于 2014-02-15T09:01:59.233 に答える
0

あなたのコードは完全に正常に動作します。ここで Dojo 1.6 を使用して jsFiddle をセットアップしました: http://jsfiddle.net/6h82P/

完全な例を次に示します。

<!DOCTYPE html>
<html>
  <head>
     <meta http-equiv="content-type" content="text/html; charset=UTF-8">
     <script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/dojo/1.6.0/dojo/dojo.xd.js.uncompressed.js'>               </script>
  </head>
  <body>
  <div id="greeting">Hello</div>
  <script>
      dojo.require("dojo.fx");
      dojo.ready(function(){
      dojo.byId("greeting").innerHTML += ", from " + dojo.version;
      dojo.fx.slideTo({
        top: 100,
        left: 200,
        node: dojo.byId("greeting")
       }).play();
    });
   </script>

  </body>
 </html>
于 2013-08-11T10:17:43.723 に答える