js document.createElement浏览器兼容处理
2015-05-19 11:25
381 查看
js document.createElement浏览器兼容处理
1:innerText
IE支持,FIREFOX不支持
解决办法:用innerHTML,2种浏览器都识别innerHTML
2:document.createElement_x
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('className','styleClass')
2 种都用上
5:用setAttribute设置事件
var obj = document.getElementByIdx_x('objId');
obj.setAttribute('onclick','funcitonname();');
FIREFOX 支持,IE不支持
解决办法:
IE中必须用点记法来引用所需的事件处理程序,并且要用赋予匿名函数
如下:
var obj = document.getElementByIdx_x('objId');
obj.onclick=function(){fucntionname();};
这种方法所有浏览器都支持
6:建立单选钮
IE以外的浏览器
var rdo = document.createElement_x('input');
rdo.setAttribute('type','radio');
rdo.setAttribute('name','radiobtn');
rdo.setAttribute('value','checked');
IE:
var rdo =document.createElement_x("<input type='radio' name='radiobtn' value='checked'>");
解决办法:
这一点区别和前面的都不一样。这次完全不同,所以找不到共同的办法来解决,那么只有IF-ELSE了
万幸的是,IE可以识别出document的uniqueID属性,别的浏览器都不可以识别出这一属性。问题解决。
0:共同的一些技巧
在动态建立INPUT型输入元素时,一般是先加入,在设置TYPE。这就有可能出错
好习惯:var btn = document.createElement_x('input');
btn.setAttribut('type','button');
document.getElementByIdx_x('formId').appendChild(btn);
GWT-EXT2.0+struts2+hibernate+ejb++spring
1:innerText
IE支持,FIREFOX不支持
解决办法:用innerHTML,2种浏览器都识别innerHTML
2:document.createElement_x
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('className','styleClass')
2 种都用上
5:用setAttribute设置事件
var obj = document.getElementByIdx_x('objId');
obj.setAttribute('onclick','funcitonname();');
FIREFOX 支持,IE不支持
解决办法:
IE中必须用点记法来引用所需的事件处理程序,并且要用赋予匿名函数
如下:
var obj = document.getElementByIdx_x('objId');
obj.onclick=function(){fucntionname();};
这种方法所有浏览器都支持
6:建立单选钮
IE以外的浏览器
var rdo = document.createElement_x('input');
rdo.setAttribute('type','radio');
rdo.setAttribute('name','radiobtn');
rdo.setAttribute('value','checked');
IE:
var rdo =document.createElement_x("<input type='radio' name='radiobtn' value='checked'>");
解决办法:
这一点区别和前面的都不一样。这次完全不同,所以找不到共同的办法来解决,那么只有IF-ELSE了
万幸的是,IE可以识别出document的uniqueID属性,别的浏览器都不可以识别出这一属性。问题解决。
0:共同的一些技巧
在动态建立INPUT型输入元素时,一般是先加入,在设置TYPE。这就有可能出错
好习惯:var btn = document.createElement_x('input');
btn.setAttribut('type','button');
document.getElementByIdx_x('formId').appendChild(btn);
GWT-EXT2.0+struts2+hibernate+ejb++spring
相关文章推荐
- 监听浏览器使用不同版本js并且处理ie兼容getElementByClassName
- 动态加载js文件 document.createElement
- W3C标准下js动态隐藏滚动条(document.body兼容处理)
- 获取scrollTop兼容各浏览器的方法,以及body和documentElement是啥?
- 【document.body.scrollTop】scrollTop=document.body.scrollTop||document.documentElement.scrollTop及浏览器兼容
- js 随机星星 document.createElement(); setAttribute()
- 【转】JS写图层方法.document.createElement("div")
- 原生js document.getElementsByClassName在IE8及以下浏览器的兼容
- js在浏览器兼容教程:事件处理
- 兼容ie5-ie11及其他主流浏览器的js document.getElementsByClassName 方法
- 不为人知的JS调用样式的方法---document.createElement().addRule(..)
- W3C标准下js动态隐藏滚动条(document.body兼容处理)
- 兼容IE8以下浏览器input表单属性placeholder不能智能提示功能,以及使用jquery.validate.js表单验证插件的问题处理
- JS中document.createElement()的用法
- 浏览器兼容处理(HTML条件注释、CSSHack和JS识别)
- 不为人知的JS调用样式的方法---document.createElement().addRu...
- js+jquery皇帝梦-12 onkeydown以及多种浏览器对事件的兼容处理办法
- 浏览器兼容处理(HTML条件注释、CSSHack和JS识别)
- js中跨浏览器的一些事件和 兼容处理
- 动态加载js文件 document.createElement