簡體   English   中英

Internet Explorer全局javascript文件

[英]Internet explorer global javascript files

我正在建立一個PHP MVC網站,並且包含幾個js文件。我遇到的問題是,例如,如果我有一個包含函數和所需變量的js文件,則無法在其他js文件中使用它們(我使用document.ready() ,我主要使用jQuery來進行Ajax調用)。 它在Firefox中工作正常,但IE拋出錯誤...我使用html類包含js文件:

function includeJs($fileName) {
    $data = '<script src="'.BASE_PATH.'/public/js/'.$fileName.'.js" type="text/javascript"></script>';
    return $data;
}

這是我得到的錯誤:

Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0;
            SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729;
            Media Center PC 6.0; InfoPath.3; .NET CLR 1.1.4322)
            Timestamp: Thu, 3 Mar 2011 11:53:33 UTC

Message: Expected identifier Line: 26 Char: 21 Code: 0
         URI: http://localhost/learning/public/js/general.js
Message: Object expected Line: 5 Char: 3 Code: 0
         URI: http://localhost/learning/public/js/tests.js

聽起來您的js文件中有語法錯誤,這僅是ie的問題,而不是firefox。

通常,這種類型的錯誤是數組或對象中的結尾逗號。

例如[1,2,3,]在firefox中有效,但在ie中無效。 為了使它有效,即您需要刪除結尾的逗號,因此它看起來像[1,2,3]

對象也是如此,因此如果您擁有{ foo: 1, bar: 2,} ,它將在ie中失敗,但在firefox中不會失敗。

你麻煩的可能是JQuery!

如果您必須使用JQuery(最新的fab),則不要依賴Google為您托管副本,因為IE8 / 9會看到Google的內容,如果啟用了跟蹤保護,則跟蹤器會阻止.js文件。

由於IE8 / 9可能需要一周的時間才能開始阻止來自Google的文件,所以要解決這個問題確實很痛苦,這也適用於使用HTTPS監視人們的新Google Plus按鈕,是的,我偷看了Googles .js來了解我在說什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM