前幾天ie8正式公布了,當天中午我就去下載了一個迫不急待的將自己的瀏覽器升級到ie8,偶還刻意的去升級了一個英文版的,感覺英文版的超級爽,就在我還在為ie8的一些新功能大爽特爽時,一個齷齪的消息來了,我網站后臺的編輯器都不管用了。
我有好幾個網站,編輯器全用的那一個,也就是ewebeditor編輯器,因為這個鳥編輯器我前幾天幾乎所有的網站都被黑客攻擊,今天又遇到這個問題,讓我頓時對這個編輯器沒了好感,所以近期也在自己開發一個編輯器,歡迎大家隨時關注我的天道酬勤博客,我會把編輯器的源代碼和系統講解都會在那里公布,打造一個純開源純免費的編輯器。
問題是這樣的,在ie8下ewebeditor的所有按鈕都無效,因為ie8是當天發布的,所以網上也沒有這樣的解決辦法,然后就換360瀏覽器,沒想到360瀏覽器用的也是ie的內核,還是一樣,沒辦法只能等等看了,畢竟這個編輯器不是自己寫的,一時半會兒也找不到解決辦法,于是到了第二天,終于在網上找到了解決辦法:
是因為ie8屏蔽了anonymous方法所以要改成onclick方法,打開include下面的editor.js文件,有這樣的段代碼:
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
把那個anonymous方法改成onclick就可以了。
問題是解決了,心情也舒暢了,結果沒過兩個小時我的會員就像我反應頁面出問題,我換到別人的電腦上一看,這叫一個汗,原來把那個方法改成onclick之后在ie7下面就不管用了,畢竟現在很多人用的還是ie7,這叫一個頭疼,于是還是去網上找,總是感覺不可能是我一個人遇到這樣的問題。
最后果然還是在csdn上找到了答案:
if(navigator.appVersion.match(/8./i)==’8.’)
{
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)");
}
else
{
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
}
用這樣一段代碼,對瀏覽器的版本做一個判斷就好了,但是我卻不知道在ie6下面管不管用,畢竟現在用ie6的人少了,一時我也不知道去哪測試。
總結:
如果隨著ie的升級我們要不停的加判斷,那豈不是更汗。所以還是自己做一個編輯器來的劃算,畢竟我們用的ewebeditor是免費的官方不會提供免費的服務。有智趣和我一起開發編輯器的可以隨時關注我的博客,到時候我會把源代碼發出來供大家研究擴充。