如何解決IE10下CkEditor報 --- SCRIPT5007: 無法獲取未定義或 null 引用的屬性“toLowerCase” 錯誤
如果你的IE是IE10,且不是運行在IE的兼容模式你也許會遇到一個奇葩的問題——SCRIPT5007: 無法獲取未定義或 null 引用的屬性“toLowerCase” 錯誤,但是項目又要求必須在IE10的環境下運行。那么,你可以參考下,我是如何解決這個問題的。
--1--出現的錯誤信息:
--2--點擊查看錯誤源:
而這時,查看W3CShool又發現toLowerCase為JavaScript中的方法
--3--做出推斷:
s.$.scopeName未定義或者為空
--4--解決方案:
首先:如何在JavaScript中判斷變量是未定義
typeof(TheValue) == 'undefined'
如何在JavaScript中判斷變量是null
!!(TheValue)
然后在做如下處理:使為空或未定義時,不走該if條件語句
if(c && s.$.scopeName!='HTML' && typeof(s.$.scopeName) != 'undefined' && !!s.$.scopeName)
t=s.$.scopeName.toLowerCase()+':'+t;
改完之后,如果還有其他的類似問題,一樣處理
更新
突然發現可以這樣處理( TheValue || "") 或 !!s.$.scopeName (因為 undefined 和 null 類型的 bool 類型均為 false)