以下以 IE 代替 Internet Explorer,以 MF 代替 Mozzila FF
1. document.form.item 問題
現(xiàn)有問題: 現(xiàn)有代碼中存在許多 document.formName.item("itemName") 這樣的語句,不能在 MF 下運行
解決方法: 改用 document.formName.elements["elementName"]
其它 參見 2
2. 集合類對象問題
現(xiàn)有問題: 現(xiàn)有代碼中許多集合類對象取用時使用 (),IE 能接受,MF 不能。
解決方法: 改用 [] 作為下標運算。如:document.forms("formName") 改為 document.forms["formName"]。 又如:document.getElementsByName("inputName")(1) 改為 document.getElementsByName("inputName")[1]
3. window.event
現(xiàn)有問題: 使用 window.event 無法在 MF 上運行
解決方法: MF 的 event 只能在事件發(fā)生的現(xiàn)場使用,此問題暫無法解決?梢赃@樣變通: 原代碼(可在IE中運行):
<input type="button" name="someButton" value="提交" onclick="javascript:gotoSubmit()"/> ... <script language="javascript"> function gotoSubmit() { ... alert(window.event); // use window.event ... } </script>
新代碼(可在IE和MF中運行):
<input type="button" name="someButton" value="提交" onclick="javascript:gotoSubmit(event)"/> ... <script language="javascript"> function gotoSubmit(evt) { evt = evt ? evt : (window.event ? window.event : null); ... alert(evt); // use evt ... } </script>
此外,如果新代碼中第一行不改,與老代碼一樣的話(即 gotoSubmit 調(diào)用沒有給參數(shù)),則仍然只能在IE中運行,但不會出錯。所以,這種方案 tpl 部分仍與老代碼兼容。
4. HTML 對象的 id 作為對象名的問題
現(xiàn)有問題: 在 IE 中,HTML 對象的 ID 可以作為 document 的下屬對象變量名直接使用。在 MF 中不能。
解決方法: 用 getElementById("idName") 代替 idName 作為對象變量使用。
出處:我愛CSS
責(zé)任編輯:bluehearts
上一頁 下一頁 JS的IE和FF兼容性問題匯總 [2]
◎進入論壇網(wǎng)頁制作、WEB標準化版塊參加討論,我還想發(fā)表評論。
|