后臺(tái)eWebEditor文本編輯器ie10不能用的解決方法(兼容模式)

問題:
最近IE升級(jí)到IE10,發(fā)現(xiàn)原來eWebEditor文本編輯器不能用了,
解決方案:
只要改一下IE10的兼容性模式。
方法:按F12 如圖勾選兼容性視圖。
然后再打開后臺(tái),編輯器就可以用了。
當(dāng)然你也可以通過修改js實(shí)現(xiàn)兼容效果
打開editor.js
找到if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
昨天ie8正式發(fā)布了,偶也去下載了一個(gè),感覺很爽,還在美的時(shí)候,突然發(fā)現(xiàn)很多網(wǎng)頁(yè)都出問題,更可氣的是自己的網(wǎng)站編輯器也不管用了,所有的按鈕都不管用,即使是別的瀏覽器也都不管用,我這叫一個(gè)汗。于是就去360論壇找人問,因?yàn)槲矣玫?60瀏覽器以為是360瀏覽器的問題。問了半天也沒有人回答我于是我就去網(wǎng)上找,由于今天才出的ie8所以網(wǎng)上根本也沒有這方面的解決辦法,于是到了第二天,網(wǎng)上終于有了這樣的貼子,所以我也找了找解決辦法。
在一個(gè)哥們的貼子中是這樣寫的,打開include下面的editor.js文件,有這樣的段代碼:
if (element.YUSERONCLICK) {
eval_r(element.YUSERONCLICK + "anonymous()");
}
或
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
或
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
說是因?yàn)閕e8屏蔽了anonymous方法所以要改成click方法,于是就改成這樣,但是我又有了一個(gè)驚人的發(fā)現(xiàn),那就是改成這樣之后在ie7下編輯器就不管用了,痛苦之余我又去網(wǎng)上查,網(wǎng)上果然高水如云,果然在csdn上找到了答案:
if(navigator.appVersion.match(/8./i)=='8.')
{
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)");
}
else
{
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
}
如果還是不行用下面這個(gè)
if(navigator.appVersion.match(/8./i)=='8.' || navigator.appVersion.match(/7./i)=='7.'){
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)"); //IE8 or IE7
} else {
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()"); //IE6
}
把代碼改成這樣之后在ie7和ie8下就都管用了。
=========================================================================
以上是一個(gè)人的說話,以下是另一個(gè)人的
還有由于那個(gè)eWebEditor編輯器的問題。
今天檢查公司一老站后臺(tái),發(fā)現(xiàn)eWebEditor編輯不能使用,按照網(wǎng)上找的答案
找到editor.js文件,把這文件里的一行語(yǔ)句if(element.YUSERONCLICK)eval_r(element.YUSERONCLICK + “anonymous()”);
修改成
if(navigator.appVersion.match(/8./i)==’8.’)
{
if(element.YUSERONCLICK)eval_r(element.YUSERONCLICK + “onclick(event)”);
}
else
{
if(element.YUSERONCLICK)eval_r(element.YUSERONCLICK + “anonymous()”);
}
原因是IE8不支持anonymous(),所以要換成onclick(event)事件。
修改之后一同事使用IE7竟然不能正常使用該編輯器,修改之后可以。
估計(jì)還是那行代碼的問題?;謴?fù)以前的,IE7可以而IE8不可以??磥磉€必須先判斷IE版本然后再寫不同的代碼。
于是就使用了下面的代碼:
if(navigator.appVersion.match(/8./i)=='8.'){
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)");
}else{
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
}
修改之后在IE8和IE7均可以正常使用eWebEditor編輯器。
但是在裝有IE8的機(jī)器上使用傲游瀏覽器竟然不能使用該編輯器,納悶了,傲游是IE內(nèi)核,應(yīng)該可以呀。
于是就使用alert(navigator.appVersion)彈出信息,結(jié)果發(fā)現(xiàn)竟然是IE7?
暈了!竟然不一樣?難道傲游沒有用到真正的IE8內(nèi)核?還是顯示的問題?
難道再加一句判斷傲游的?
沒辦法:
if(navigator.appVersion.match(/8./i)=='8.' || navigator.appVersion.match(/MAXTHON/i)=='MAXTHON'){
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)");
}else{
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
}
前幾天看新聞?wù)f傲游開發(fā)自己的內(nèi)核瀏覽器,希望眾多瀏覽器在兼容代碼上好一些,不要浪費(fèi)編寫代碼者的那么多找不兼容問題、調(diào)試不兼容問題的時(shí)間。
如果上面不行的話,請(qǐng)使用下面的方法:
try{
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
}
catch(e){
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)");
}
我用下面這個(gè)人的方法解決了
類似文摘:
原創(chuàng)]簡(jiǎn)單解決ewebeditor在IE7、IE8下失效問題
EWEBEDITOR在IE7、IE8下,圖片上傳等按鈕總是不能正常彈出,搞的人很郁悶,在網(wǎng)上搜索了一下解決方法,找到代碼編輯器目錄JS下的EDITOR.JS文件,找到如下代碼
if (element.YUSERONCLICK) {
eval_r(element.YUSERONCLICK + "anonymous()");
}
再換成如下代碼:
if(navigator.appVersion.match(/8./i)=='8.' || navigator.appVersion.match(/7./i)=='7.'){
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)"); //IE8 or IE7
} else {
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()"); //IE6
}
替換后問題依舊。TNND,又找一位仁兄寫的代碼換上:
if(navigator.appVersion.match(/MSIE (7|8)\./i)!=null){
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "onclick(event)");
}else{
if (element.YUSERONCLICK) eval_r(element.YUSERONCLICK + "anonymous()");
}
還是不行,兩個(gè)代碼都未能解決問題,郁悶,看來,要不是瀏覽器中毒了,造成JS不能正常取得版本號(hào),就是我RP太差。所以引起程序不知道如何處理判斷。我看了一下兩位作者的代碼,雖然寫的很好,但是都有局限性。既然知道了造成問題的原因,那就好辦了,自己寫吧
用這段代碼吧:
try{
eval_r(element.YUSERONCLICK + "anonymous()");
}
catch(error)
{
eval_r(element.YUSERONCLICK + "onclick(event)");
}
寫完以后再次測(cè)試,OK,正常了,哈哈?。∥也还芩荌E7還是IE8,我都往下執(zhí)行,一個(gè)錯(cuò)了我就執(zhí)行另一個(gè),管它呢,哈哈,正常解決,容錯(cuò)語(yǔ)句就是挺管用的。
相關(guān)文章
Edge瀏覽器精簡(jiǎn)設(shè)置菜單: 集錦/應(yīng)用等移至更多工具選項(xiàng)
目前 Edge 瀏覽器的“...”設(shè)置菜單占據(jù)大量屏幕空間,尤其是在窗口模式下,用戶體驗(yàn)較差,在最新版本dege中,微軟精簡(jiǎn)了“...”設(shè)置菜單,提升了用戶體驗(yàn)2025-03-24如何巧妙導(dǎo)出百度網(wǎng)盤文件? 看完輕松搞定!
在工作和生活中,我們可能常常會(huì)遇到需要從百度網(wǎng)盤導(dǎo)出文件的情況,下面跟大家分享一下具體辦法2025-03-21微軟Edge瀏覽器大改版: 精簡(jiǎn)界面 梳理?xiàng)l目
微軟在Canary頻道發(fā)布了最新版的Microsoft Edge瀏覽器,其中最引人注目的變化莫過于設(shè)置頁(yè)面的全面煥新,這次更新不僅精簡(jiǎn)了菜單,新增了矩形按鈕,還優(yōu)化了子目錄設(shè)置,并2025-03-10如何在Firefox中實(shí)現(xiàn)垂直標(biāo)簽頁(yè)? 火狐瀏覽器垂直標(biāo)簽頁(yè)設(shè)置方法
Firefox默認(rèn)的標(biāo)簽頁(yè)是水平顯示的,但有一個(gè)方法可以將它們轉(zhuǎn)換為垂直顯示,下面我們就來看看設(shè)置方法2025-03-05引入垂直標(biāo)簽頁(yè)布局! Firefox 136瀏覽器發(fā)布
Firefox 136 正式發(fā)布,這個(gè)版本增了大家期待已久的「垂直標(biāo)簽頁(yè)」布局,下面我們就來看看詳細(xì)更新內(nèi)容2025-03-05瀏覽器怎么開啟閱讀模式? Chrome/Edge/Safari/Firefox開啟方法
閱讀模式是瀏覽器提供的一種功能,可以去除網(wǎng)頁(yè)上的廣告、按鈕、背景圖等雜亂信息,使內(nèi)容更加簡(jiǎn)潔易讀,不同瀏覽器的閱讀模式開啟方法略有不同,以下是幾種常見瀏覽器的開2025-02-25gmail郵箱注冊(cè)及手機(jī)號(hào)碼無(wú)法驗(yàn)證的解決方法2025
今天下載一個(gè)app需要用到gmail的郵箱,這個(gè)郵箱不論是安全與隱私保護(hù)都是比較好的,但因?yàn)閲?guó)內(nèi)的原因不容易注冊(cè),這里就為大家分享一下解決方法2025-02-24瀏覽器網(wǎng)頁(yè)打印預(yù)覽在哪里? 一看搞懂打印預(yù)覽告別打印失誤
避免打印出來的效果不理想,浪費(fèi)紙張,打印預(yù)覽是指在打印文檔之前,預(yù)先查看文檔的打印效果,打印預(yù)覽在哪里?詳細(xì)如下2025-02-13怎么把圖片背景變成透明? 教你一個(gè)免費(fèi)在線圖片去白底變透明的方法
瀏覽器下載的圖片有白底,想要變成透明底,方便當(dāng)素材直接導(dǎo)入,該怎么操作呢?之前介紹很多方法都用到了軟件,今天教大家一個(gè)在線處理方法2025-01-31如何在Edge瀏覽器中安裝第三方翻譯插件? Edge瀏覽器插件安裝全攻略
Edge瀏覽器作為微軟推出的新一代瀏覽器軟件,不僅界面簡(jiǎn)潔、速度快,還支持用戶自由安裝插件來擴(kuò)展其功能,今天,我們就來詳細(xì)講解一下Edge瀏覽器安裝插件的方法2025-01-30