【发布时间】:2012-04-17 07:08:01
【问题描述】:
尝试使用 jQuery 动态加载 Javascript 文件时,我不断收到“格式不正确”的错误消息。我在这里找到了有类似问题的人,但尚未看到提供的解决方案。
我的主要脚本使用:
$.ajax({
url: 'test.js',
dataType: 'script',
cache: true,
success: loadScriptReturn
});
function loadScriptReturn() { }
我的最简单形式的动态加载脚本 (test.js):
alert('Hello World.');
由于我专门将它作为脚本 MIME 类型加载,它消除了 Firefox 对正在拉入的文件类型感到困惑的可能性。有没有办法解决这个问题?或者,有没有办法关闭 Firefox 中的这个特定错误? (注意:这是一个错误,而不是警告,这非常烦人,因为我确实希望看到后续的错误消息——在 Firefox 上不好,因为这应该是警告,而不是错误)
请记住,此示例有效,但仍会产生错误。考虑到我需要动态加载多少脚本,如果我找不到解决此问题的方法,那么尝试对“真实”错误消息进行排序将会很乏味。
提前感谢贡献者!
【问题讨论】:
-
我怀疑这是 Firefox 给你的信息。更有可能是 Firebug。
-
是的,可能是 Firebug - 此外,你不应该使用
ajax()来获取 JS 脚本 - 你应该使用getScript()api.jquery.com/jQuery.getScript - 虽然一个是另一个的简写,但它是更清晰。 -
还要检查您的编码。如果您使用的是 UTF-8,请确保您没有使用 BOM,因为这可能会引起各种麻烦。
-
你是对的,Firebug 错误,但我确实找到了解决方案(请参阅下面的评论)......感谢大家对此进行检查。我昨天花了 3-4 个小时,今天花了 1-2 个小时试图解决这个问题。原来只有在本地使用 Ajax 时才会抛出这个问题;远程:没有错误。
标签: javascript jquery firefox non-well-formed