错误:无法在dojo中加载模块

时间:2012-12-29 07:09:18

标签: javascript dojo

我在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>

我收到错误 错误:无法加载'dojo.fx';最后一次尝试'./fx.js'

注意:我没有改变dojo的目录结构。我正在使用dojo 1.6

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

2 个答案:

答案 0 :(得分:1)

问题是dojo根本无法从我的本地文件系统运行。

  

从Web服务器运行源代码,而不是文件系统,即使   Web服务器正在您的开发计算机上运行。该   浏览器处理来自本地文件系统的HTTP请求   比从Web服务器更严格,即使它正在运行   同一台机器。为了获得一致的结果,您应始终运行Dojo   在任何HTTP Web服务器(Apache,nginx,Tomcat,IIS,Jetty等)中。

答案 1 :(得分: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>