網站後(hòu)台編輯頁面(miàn),無法上傳文件和圖片,點擊編輯器的按鈕沒(méi)反應,IE8顯示JS錯誤,缺少對(duì)象,editor.js,原因是eWebEditor的浏覽器兼容的問題,在IE6下面(miàn)沒(méi)有問題。
editor.js 有問題代碼是:
if (element.YUSERONCLICK) {
eval(element.YUSERONCLICK + “anonymous()”);
}
原因是ie8屏蔽了anonymous方法所以要改成(chéng)onclick方法。網上的解決方法如下:(加個判斷浏覽器的語句)
if(navigator.appVersion.match(/MSIE (7|8)\./i)!=null){
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + “onclick(event)”);
}else{
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + “anonymous()”);
}
經(jīng)測試,IE8和ie6下面(miàn)是沒(méi)問題的。但是在IE7下有問題。navigator.appVersion返回的字符串在各種(zhǒng)IE的情況下并不與實際情況一緻,比如在同時安裝了IE8和以IE内核的浏覽器(比如搜狗浏覽器)的情況下,并不是返回MSIE 8 而是MSIE 7。因此網上這(zhè)種(zhǒng)解決辦法是并不總是有效的。
以下是可行的解決辦法:
try{
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
}
catch(e){
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)");
}
此種(zhǒng)方法在各種(zhǒng)IE下都(dōu)是有效的。(ewebeditor好(hǎo)像隻支持IE)。