ie和火狐兼容問(wèn)題
1. document.form.item 問(wèn)題
(1)現(xiàn)有問(wèn)題:
現(xiàn)有代碼中存在許多 document.formName.item("itemName") 這樣的語(yǔ)句,不能在Firefox(火狐)下運(yùn)行
(2)解決方法:
改用 document.formName.elements["elementName"]
2. 集合類(lèi)對(duì)象問(wèn)題
(1)現(xiàn)有問(wèn)題:
現(xiàn)有代碼中許多集合類(lèi)對(duì)象取用時(shí)使用 (),IE 能接受,F(xiàn)irefox(火狐)不能。
(2)解決方法:
改用 [] 作為下標(biāo)運(yùn)算。如:
document.forms("formName") 改為 document.forms["formName"].
又如:
document.getElementsByName("inputName")(1) 改為document.getElementsByName("inputName")[1]
3. window.event
(1)現(xiàn)有問(wèn)題:
使用 window.event 無(wú)法在火狐瀏覽器上運(yùn)行
(2)解決方法:
火狐 的 event 只能在事件發(fā)生的現(xiàn)場(chǎng)使用,此問(wèn)題暫無(wú)法解決?梢赃@樣變通: 原代碼(可在IE中運(yùn)行):
<br /><input type="button" name="someButton" value="提交" onclick="javascript:gotoSubmit()"/><br />...<br /><script language="javascript"><br />function gotoSubmit() {<br />...<br />alert(window.event); // use window.event<br />...<br />}<br /></script>
新代碼(可在IE和火狐中運(yùn)行):
<input type="button" name="someButton" value="提交" onclick="javascript:gotoSubmit(event)"/><br />...<br /><script language="javascript"><br />function gotoSubmit(evt) {<br />evt = evt ? evt : (window.event ? window.event : null);<br />...<br />alert(evt); // use evt<br />...<br />}<br /></script>
此外,如果新代碼中第一行不改,與老代碼一樣的話(即 gotoSubmit 調(diào)用沒(méi)有給參數(shù)),則仍然只能在IE中運(yùn)行,但不會(huì)出錯(cuò)。所以,這種方案 tpl 部分仍與老代碼兼容。
出處:博客園
責(zé)任編輯:bluehearts
上一頁(yè) 下一頁(yè) ie和火狐兼容問(wèn)題 [2]
◎進(jìn)入論壇網(wǎng)絡(luò)編程版塊參加討論
|