Dojo 无法加载';dijit.Menu';

Dojo 无法加载';dijit.Menu';,dojo,Dojo,我想用Google CDN运行Dojo/Dijit: <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.3.2/dojo/dojo.xd.js"> </script> 我试过1.3.2,1.3,1.2,都给出了同样的问题。 如果我所读到的是真的,我只需要包含dojo.xd.js,那么requires将正确地找到dijit与dojo之间的关

我想用Google CDN运行Dojo/Dijit:

<script type="text/javascript" 
         src="http://ajax.googleapis.com/ajax/libs/dojo/1.3.2/dojo/dojo.xd.js">
</script>

我试过1.3.2,1.3,1.2,都给出了同样的问题。 如果我所读到的是真的,我只需要包含dojo.xd.js,那么requires将正确地找到dijit与dojo之间的关系

在Firebug中,我看到了以下内容:

200行

我对此感到困惑,因为我知道如果http status=200是可以的,那么为什么这一行显示为红色

下一行是

无法加载“dijit.Menu”;最后的 已尝试“../dijit/Menu.js”

我在本地使用了所有Dojo/Dijit源代码,但我决心让它在CDN中运行

我做了一些搜索,我能找到的最好的结果是,Menu.js包含在某些版本中,但我认为他们说的是1.2或之前的版本

Chrome浏览器中也会出现相同的错误

谢谢你的帮助。 尼尔·沃尔特斯

添加更多信息:

谢谢你的例子。我拿了它,得到了一份简单的菜单:

这是我正在努力工作的“野兽”。

这最初是Dojo主题演示的一个副本,在我使用Dojo local运行时,它可以正常工作。它执行延迟/手动解析

就像我上面说的,我试过1.2、1.3、1.3.2等等,所以我复制/粘贴到问题中只是时间问题

哎呀,我没有djconfig,所以我添加了它,但也有类似的问题,只是更显式的路径

再次感谢-当我克服这些小困难时,我会爱上Dojo的

这是我试图复制的页面:

您的djConfig中有什么奇怪的东西吗?它吐出“./dijit/Menu.js”的事实使您看起来好像有一个路径设置

我建立了一个使用Google CDN的应用程序,它可以:

dojo.require('dijit.Menu')
没问题

另外,脚本标签有1.3.2,但它是从1.2加载菜单,这很奇怪

发布一个完整的源代码,说明哪些不起作用,这将有助于跟踪问题

发布后编辑链接

从testDijit页面中删除以下行:

<script type="text/javascript" src="/dijit/dijit.js"></script>

<script type="text/javascript" src="/dijit/dijit-all.js" charset="utf-8"></script>

又一次编辑

说我疯了(因为你似乎不赞成或不支持我的答案,所以这对我来说是一种不可行的做法),但我和CDN一起工作。它仍然存在问题,因为CDN上没有所有的测试文件(例如dijitTest.css和countries.json)。你可以下载它,并在你的ow文件上做一个比较,看看我改变了什么。我主要向CSS和图像添加了一些缺少的需求和更改的路径。您的文件中还有一个引用
/dojo.js
的脚本标记


我很好奇为什么你如此热衷于让dijit测试仪在你的应用程序上运行,因为在你的应用程序中学习dojo解决问题似乎更有趣/更有效率。

请参阅修订-我编辑了我的原始问题,因为评论中的空间不足。更改完成-类似结果。这是我测试100个排列时留下的垃圾。我得去健身房,需要休息一下。再次感谢。我以为我把你所有的答案都投了高票,我会回去检查的。同时,我将完成你在上面发布的内容。基本上,我将获取他们的完整样本,并从中删除一些内容,以成为我的菜单/框架-我将内容放在右侧面板中。因此,/testDijit是他们在GAE上重新制作的示例,/testDijit菜单是我开始根据自己的需要对其进行调整的地方。我看到您添加了这五个ILNE://添加了这五个requires dojo.require('dijit.PopupMenuItem');require('dijit.PopupMenuBarItem');require('dijit.layout.LinkPane');require('dijit.form.VerticalRuleLabels');require('dijit.form.VerticalRule');没有它们,屏幕就不能很好地“绘制”。没有它们,themeTester.html演示如何工作?你怎么知道要添加它们?因此,删除额外的“垃圾”过时/测试这不是一个djConfig问题,请参阅我关于dijit.js和dijit-all.js的回答