eWebEditor不支持IE8的解决方法
?
?
注意ASP.NET頁面運行后的HTML標(biāo)簽的Name屬性值可能要改變?
?
運行前:?
<form enctype="multipart/form-data" action="#" method="post" id="adminform" name="form1" runat="server"><p>發(fā)表文章</p>
<span>標(biāo)題:</span><input type="text" name="title" id="admintitle" runat="server"/><br />
<span>附件:</span><asp:FileUpload id="file" runat="server"/><br />
<span>類型:</span><select name="type" id="adminselect" runat="server">
<option value="課件">課件</option>
<option value="代碼">代碼</option>
</select><br />
<span>內(nèi)容:</span><br />
<textarea id="admintext" name="text" cols="70" rows="21" runat="server"></textarea><br />
<input type="button" value="高級編輯" class="button" style="width:100px;" οnclick="eWebEditorPopUp('adminform', 'admintext', 700, 500);"/>
<input type="reset" value="重置" class="button"/>
<asp:Button ID="button1" CssClass="button" runat="server" Text="提交" οnclick="button1_Click"/>
<span id="fileex" runat="server"><a></a></span>
<span id="result" runat="server"><a></a></span>
</form>
?
?
運行后:?
<form name="adminform" method="post" action="admin_admin.aspx" id="adminform" enctype="multipart/form-data"><div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE0MDM0NzkyMTgPZBYCAgMPFgIeCWlubmVyaHRtbAUHemFpdGlhbmRkskyzG8f4ESObK9M+JsGrnfiYCY8=" />
</div>
<p>發(fā)表文章</p>
<span>標(biāo)題:</span><input name="admintitle" type="text" id="admintitle" /><br />
<span>附件:</span><input type="file" name="file" id="file" /><br />
<span>類型:</span><select name="adminselect" id="adminselect">
<option value="課件">課件</option>
<option value="代碼">代碼</option>
</select><br />
<span>內(nèi)容:</span><br />
<textarea name="admintext" id="admintext" cols="70" rows="21"></textarea><br />
<input type="button" value="高級編輯" class="button" style="width:100px;" οnclick="eWebEditorPopUp('adminform', 'admintext', 700, 500);"/>
<input type="reset" value="重置" class="button"/>
<input type="submit" name="button1" value="提交" id="button1" class="button" />
<span id="fileex"><a></a></span>
<span id="result"><a></a></span>
<div>
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBQL/wejzAwKgz8D1BwL4jJyHDAKE9LONCQKs34rGBiVbt02kJursZrIBBXPl/aUiozt2" />
</div></form>
解決IE8不支持eWebEditor在線文本編輯器的方法如下:
??? 1、首先找到eWebEditor編輯器所在的目錄,然后搜索到editor.js文件,由于eWebEditor有很多個版本,所以editor.js文件所在的目錄也有所不同,有的可能在Include目錄下,有的可能在js目錄下。
??? 2、用記事本打開editor.js文件,找到如下代碼:
if (element.YUSERONCLICK) {
??? eval(element.YUSERONCLICK + "anonymous()");
}
?
??? 由于eWebEditor編輯器版本不同,有的可能找不到上面的代碼,而是下面這樣的代碼,兩種代碼只是書寫格式不同而已,含義是一樣的:
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
???
??? 3、將上面的代碼替換為下面的代碼即可:
if(navigator.appVersion.match(/8./i)=='8.')
??? {
????? if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)");??
?? }
else
?? {
???? if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
}
?
?
?
?
?
解決方法:
替換168行
if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
把那個anonymous方法改成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()");
}
?
?
?
?
?
最近IE8出來了,ewebeditor也出現(xiàn)了不兼容問題.下面是解決辦法:
if(navigator.appVersion.match(/8./i)=='8.'?||?navigator.appVersion.match(/7./i)=='7.'){??if?(element.YUSERONCLICK)?eval(element.YUSERONCLICK?+?"onclick(event)");?//IE8?or?IE7
}?else?{
??if?(element.YUSERONCLICK)?eval(element.YUSERONCLICK?+?"anonymous()");?//IE6
}
不過ewebeditor對其他瀏覽器也存在不兼容情況,建議還是用fckeditor.
?
?
?
?
今天檢查公司一老站后臺,發(fā)現(xiàn)eWebEditor編輯不能使用,按照前段時間的博文“IE 8.0 下 eWebEditor不能正常使用的解決辦法”中修改了Edit.js一行代碼。修改之后一同事使用IE7竟然不能正常使用該編輯器,修改之后可以。
估計還是那行代碼的問題。恢復(fù)以前的,IE7可以而IE8不可以。看來還必須先判斷IE版本然后再寫不同的代碼。
于是就使用了下面的代碼:
if(navigator.appVersion.match(/8./i)=='8.'){
????if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)");
}else{
????if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
}
修改之后在IE8和IE7均可以正常使用eWebEditor編輯器。
但是在裝有IE8的機器上使用傲游瀏覽器竟然不能使用該編輯器,納悶了,傲游是IE內(nèi)核,應(yīng)該可以呀。
于是就使用alert(navigator.appVersion)彈出信息,結(jié)果發(fā)現(xiàn)竟然是IE7? 如下圖:
使用IE8彈出的如下圖:
暈了!竟然不一樣?難道傲游沒有用到真正的IE8內(nèi)核?還是顯示的問題?
難道再加一句判斷傲游的?
沒辦法:
if(navigator.appVersion.match(/8./i)=='8.' || navigator.appVersion.match(/MAXTHON/i)=='MAXTHON'){
????if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "onclick(event)");
}else{
????if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
}
前幾天看新聞?wù)f傲游開發(fā)自己的內(nèi)核瀏覽器,希望眾多瀏覽器在兼容代碼上好一些,不要浪費編寫代碼者的那么多找不兼容問題、調(diào)試不兼容問題的時間。
總結(jié)
以上是生活随笔為你收集整理的eWebEditor不支持IE8的解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 颜色与心情
- 下一篇: IE6.0,ie7.0与Firefox的