在我使用過的幾臺服務器上,我的外部加載的資源很多(但不是全部)出錯並拋出(在Chrome中)「未捕獲的SyntaxError:意外的令牌非法」。在某些服務器上,許多外部資源(GA,fonts.com字體等)出現「Uncaught SyntaxError:Unexpected token ILLEGAL」錯誤?
從googleapis CDN包括jQuery可以正常工作,但加載fonts.com JavaScript字體文件並加載基本Google Analytics代碼時都出錯。
下面的代碼(也,這裏是一個fiddle如果有幫助):
<html>
<head>
<title>fonttest</title>
<script type="text/javascript" src="http://fast.fonts.com/jsapi/dd7c6b7d-1ecb-4ef4-bf65-c4759f97cbe3.js"></script>
<script type="text/javascript" src="http://www.google-analytics.com/ga.js"></script>
</head>
<body>
<h2>This is a test of the emergency broadcast system. This is only a test. If this had been an actual emergency, the tones you just heard would have been followed by official news or instructions.</h2>
</body>
</html>
從這些文件轉移爲text/javascript
的標頭。
最後,當我在Web Inspector的Resources選項卡中查看資源時,我看到一些非羅馬字符而不是這些文件的實際代碼,所以這讓我認爲必須存在某種編碼問題。我嘗試在文檔頭中設置字符集utf-8
和iso-8859-1
(使用meta charset
),但都沒有幫助。
您使用的是哪個版本的Chrome? DevTools最近修復了一些與資源有關的問題,因此更新到版本20或更高版本可能會有所幫助。只是爲了澄清:在20.0.1132.27(官方版本140692)測試版中,小提琴不會記錄任何錯誤並顯示正確的資源內容。 –
我19歲(19.0.1084.56)。但是,我在Safari的web檢查器中看到了同樣的問題(即它將文件作爲一些非羅馬字符傳輸);唯一的區別是它沒有紅色的錯誤。 而且,小提琴也不會給我帶來任何麻煩;這就是爲什麼我確定這是一個與服務器相關的問題,而不僅僅是代碼問題。 我希望這有助於澄清。謝謝! –
好吧,我也在Chrome Canary(21.0.1172.2)中對它進行了測試,並且發現了相同的錯誤。 –