問題描述:
頁面引入一個js文件,其中定義了函數或對象,然后在頁面中調用函數或對象時,在IE6會報“語法錯誤”或“缺少對象”。在IE6+或者IE7卻運行正常。
問題分析:
這個對象在引入的JS文件中是存在的,因為在IE6+以上的瀏覽器都可以正常運行。這個問題在于文件編碼上,如果JS文件編碼與當前頁面的編碼不一致,就可能導致在IE6中頁面不能正常獲取和解析JS文件中的內容,在IE6中,默認引入的文件和頁面的編碼是一致的。在IE6+以上的瀏覽器中,一般瀏覽器會自動識別每個外部文件的編碼并進行解析;
問題解決:
一:引入js文件時加charset屬性,保持與頁面編碼一致;
二:修改引入文件編碼格式;
三:新建一個文件格式同頁面編碼格式一致,復制粘貼內容;
(個人建議第三種方法,但建議在導入js時加上charset屬性!)
發現問題:
由于重裝系統,發布項目后發現js報錯:報語法錯誤還有缺少對象。郁悶
以前系統是ie7,重裝系統后為ie6.剛開始以為是瀏覽器版本問題,以為頁面導入的js里面有ie6不兼容的代碼!所以最后把js一行一行注釋掉,當最后js文件全刪掉了,還出現上面錯誤。------超級郁悶
以前代碼也沒事,怎么重裝個系統就壞了~最后找出以前項目發布了,在ie6下沒有錯誤,代碼完全一樣。------------不知還能否用郁悶一詞不?
想了半天,想到編碼問題。以前項目編碼為gb2312,現在項目改為UTF-8
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com