I look up it from google and I found that"IE makes up there own rules,FF uses WC3 Standard."So it's difficult to make all scripts work in both browser.You have to fix every script you need.The following is some script differences between IE and FF.If you have more issues, you must look up solution by yourself from google or baidu.1:innerText IE支持,FIREFOX不支持 解决办法:用innerHTML,2种浏览器都识别innerHTML2:document.createElement document.appendChild 在往表里插入行时 FIREFOX支持,IE不支持 解决办法:把行插入到TBODY中,不要直接插入到表 3:setAttribute('style','color:red;') FIREFOX支持(除了IE,现在所有浏览器都支持),IE不支持 解决办法:不用setAttribute('style','color:red') 而用object.style.cssText = 'color:red;'(这写法也有例外) 最好的办法是上面种方法都用上,万无一失 ^_^ 4:class setAttribute('class','styleClass') FIREFOX支持,IE不支持(指定属性名为CLASS,IE不会设置元素的CLASS属性,相反只使用SETATTRIBUTE时IE自动识别CLASSNAME属性) 解决办法: setAttribute('class','styleClass') setAttribute('className','styleClass') 2种都用上5:用setAttribute设置事件 var obj = document.getElementById('objId'); obj.setAttribute('onclick','funcitonname();'); FIREFOX支持,IE不支持 解决办法: IE中必须用点记法来引用所需的事件处理程序,并且要用赋予匿名函数 如下: var obj = document.getElementById('objId'); obj.onclick=function(){fucntionname();}; 这种方法所有浏览器都支持6:建立单选钮 IE以外的浏览器 var rdo = document.createElement('input'); rdo.setAttribute('type','radio'); rdo.setAttribute('name','radiobtn'); rdo.setAttribute('value','checked');IE: var rdo =document.createElement("<input type='radio' name='radiobtn' value='checked'>"); 解决办法: 这一点区别和前面的都不一样。这次完全不同,所以找不到共同的办法来解决,那么只有IF-ELSE了 万幸的是,IE可以识别出document的uniqueID属性,别的浏览器都不可以识别出这一属性。问题解决。0:共同的一些技巧 在动态建立INPUT型输入元素时,一般是先加入,在设置TYPE。这就有可能出错好习惯:var btn = document.createElement('input'); btn.setAttribut('type','button'); document.getElementById('formId').appendChild(btn);
IE支持,FIREFOX不支持
解决办法:用innerHTML,2种浏览器都识别innerHTML2:document.createElement
document.appendChild
在往表里插入行时
FIREFOX支持,IE不支持
解决办法:把行插入到TBODY中,不要直接插入到表
3:setAttribute('style','color:red;')
FIREFOX支持(除了IE,现在所有浏览器都支持),IE不支持
解决办法:不用setAttribute('style','color:red')
而用object.style.cssText = 'color:red;'(这写法也有例外)
最好的办法是上面种方法都用上,万无一失 ^_^
4:class
setAttribute('class','styleClass')
FIREFOX支持,IE不支持(指定属性名为CLASS,IE不会设置元素的CLASS属性,相反只使用SETATTRIBUTE时IE自动识别CLASSNAME属性)
解决办法:
setAttribute('class','styleClass')
setAttribute('className','styleClass')
2种都用上5:用setAttribute设置事件
var obj = document.getElementById('objId');
obj.setAttribute('onclick','funcitonname();');
FIREFOX支持,IE不支持
解决办法:
IE中必须用点记法来引用所需的事件处理程序,并且要用赋予匿名函数
如下:
var obj = document.getElementById('objId');
obj.onclick=function(){fucntionname();};
这种方法所有浏览器都支持6:建立单选钮
IE以外的浏览器
var rdo = document.createElement('input');
rdo.setAttribute('type','radio');
rdo.setAttribute('name','radiobtn');
rdo.setAttribute('value','checked');IE:
var rdo =document.createElement("<input type='radio' name='radiobtn' value='checked'>");
解决办法:
这一点区别和前面的都不一样。这次完全不同,所以找不到共同的办法来解决,那么只有IF-ELSE了
万幸的是,IE可以识别出document的uniqueID属性,别的浏览器都不可以识别出这一属性。问题解决。0:共同的一些技巧
在动态建立INPUT型输入元素时,一般是先加入,在设置TYPE。这就有可能出错好习惯:var btn = document.createElement('input');
btn.setAttribut('type','button');
document.getElementById('formId').appendChild(btn);