我的javascript工作正常,然后突然间它没有。 Chrome为我提供了Uncaught SyntaxError:我的JS文件第1行上名为para2.js的意外令牌ILLEGAL错误。我从文件中删除了脚本,除了以下内容,我仍然收到错误:
$( window ).ready(function() {
});
我的jQuery文件包含在我的文档的头部:
<script src="../shared/jquery.js" type="text/javascript"></script>
<script src="js/para2.js" type="text/javascript"></script>
当我在“源”标签上的Chrome开发者工具中查看我的js文件时,它会显示中文脚本:
兪敵祲搨捯浵湥⥴爮慥祤昨湵瑣潩⡮笩⥽
当我查看js文件的来源时,它看起来很好。我已经阅读了类似的帖子,说从JSFiddle复制和粘贴可能包含一些可能导致它的隐藏字符,但我从头开始从空白文本文件中编写此文件并复制并粘贴任何内容。奇怪的是,它正在工作,现在却没有。我的服务器遭到黑客攻击了吗?非常感谢帮助。
答案 0 :(得分:12)
您应该使用charset
属性来指明您正在使用哪个字符集。
<script src="../shared/jquery.js" type="text/javascript" charset="UTF-8">
答案 1 :(得分:2)
我遇到了与jquery-1.5.1.min.js相同的问题。 Chrome一直将其评估为中文(脚本在IE中运行良好)。我终于通过在Notepad ++中使用“convert to UTF-8”重新编码.js文件来解决这个问题。注意,不是没有BOM的UTF-8,而是UTF-8。