我有在头调用的脚本,像这样的页面:歌剧:.js文件将不会加载
<script type="text/javascript" src="http://www.discoverfire.net/analytics/l/a.js"></script>
(请注意,您将无法加载这个脚本,因为它是本地DNSd作为分期域)
非常简单。
对于这种基本的方形功能,Firefox,IE,Chrome都没有问题。
但是,Opera拒绝加载脚本。其中的任何变量或函数都是“未定义的”,在蜻蜓中,脚本标记显示在DOM中,但“脚本”选项卡显示“未找到脚本文件”。
我去谷歌和找到随机页面,他们的外部.js文件似乎工作得很好。
任何想法为什么歌剧恨我?有没有我缺少的安全/ JavaScript的东西?
几件事情,可能是相关的,但真的应该没有什么区别:
- 脚本是比页面不同的域。
- 该脚本仅适用于本地网络。该域名在本地用于分级,从网络外部指向其他地方。 Opera是否具有秘密使用外部DNS服务器的设置?
- 该脚本适用于所有其他浏览器。
- 问题不在脚本内容中。我已经将它简化为一行,并且在Opera中不起作用。
更新:
OK,这个问题似乎是歌剧如何处理领域。
我已经将脚本移动到其他几个域,并且它工作得很好。我已将它移到本地DNS域上的多个路径,并且它不会在该域的任何地方工作。
这使我相信,问题在于Opera无法或无法从某个原因加载该域中的脚本。
奇怪的是,从域中加载页面和其他资源似乎没有问题,问题仅在于.js文件。
该域名已注册,但已停放。我们在本地对DNS进行了DNS处理,因此我们可以将它用于分段/测试,这可能会让Opera以某种方式与JS安全性相混淆。
虽然我可能是错的 - 我真的不知道。如果其他人有一个,我很乐意听到它。
更新2:
关于蜻蜓和错误控制台/开发者工具,他们不说对剧本的任何东西。对于脚本中应该存在的变量和函数,有很多未定义的变量错误,但除此之外,没有错误。奇怪的是,脚本标签确实显示在DOMM中,但是如果我点击脚本标签,它会显示“找不到脚本”。
更新3:
没有阻止的内容,所以我们至少可以排除设置。
应...的script.js是什么样的路径?你的意思是像“../script.js”这样的相对路径还是什么? – jitter 2009-06-27 21:40:18