JavaScript操作DOM元素中的class属性(转载)
2009-07-27 16:39
609 查看
http://www.dlog.cn/gridone/diary/13938
在交互性较强的Web应用中,经常需要动态更改指定元素的属性值,假设变量e是页面中一个元素的引用,根据W3C DOM标准,可以在JavaScript中使用e.getAttribute('属性名')来取得属性的值,并且用e.setAttribute('属性名', '值')来设置属性值。网页标签中,class是一个常用的属性,用于指定某一个元素遵从一个或多个自定义样式,由于class属于JavaScript保留值,因此当我们要操作元素的class属性值时,直接使用e.getAttribute('class')和e.setAttribute('class', 'value')可能会遭遇浏览器兼容性问题。
W3C DOM标准为每个节点提供了一个可读写的className属性,作为节点class属性的映射,标准浏览器的都提供了这一属性的支持,因此,可以使用e.className访问元素的class属性值,也可对该属性进行重新斌值。而IE和Opera中也可使用e.getAttribute('className')和e.setAttribute('className', 'value')访问及修改class属性值。相比之下,e.className是W3C DOM标准,仍然是兼容性最强的解决办法。
以下列表说明了上文提及的三种做法的浏览器兼容性测试:
e.className 能在IE、Mozilla(Firefox)、Opera和Safari正确运行
e.getAttribute('class')和e.setAttribute('class', 'value') 能在Mozilla(Firefox)和Opera中正确运行,在IE和Safari中则不能使用。
e.getAttribute('className') 在IE和Opera中正确运行,在Mozilla(Firefox)和Safari中则不能使用。
在交互性较强的Web应用中,经常需要动态更改指定元素的属性值,假设变量e是页面中一个元素的引用,根据W3C DOM标准,可以在JavaScript中使用e.getAttribute('属性名')来取得属性的值,并且用e.setAttribute('属性名', '值')来设置属性值。网页标签中,class是一个常用的属性,用于指定某一个元素遵从一个或多个自定义样式,由于class属于JavaScript保留值,因此当我们要操作元素的class属性值时,直接使用e.getAttribute('class')和e.setAttribute('class', 'value')可能会遭遇浏览器兼容性问题。
W3C DOM标准为每个节点提供了一个可读写的className属性,作为节点class属性的映射,标准浏览器的都提供了这一属性的支持,因此,可以使用e.className访问元素的class属性值,也可对该属性进行重新斌值。而IE和Opera中也可使用e.getAttribute('className')和e.setAttribute('className', 'value')访问及修改class属性值。相比之下,e.className是W3C DOM标准,仍然是兼容性最强的解决办法。
以下列表说明了上文提及的三种做法的浏览器兼容性测试:
e.className 能在IE、Mozilla(Firefox)、Opera和Safari正确运行
e.getAttribute('class')和e.setAttribute('class', 'value') 能在Mozilla(Firefox)和Opera中正确运行,在IE和Safari中则不能使用。
e.getAttribute('className') 在IE和Opera中正确运行,在Mozilla(Firefox)和Safari中则不能使用。
相关文章推荐
- javascript--DOM对象模型的常用操作属性和方法(转载)
- Javascript 操作元素Class属性的问题
- 第一百六十六节,jQuery,基础 DOM 和 CSS 操作,元素内容,元素属性,css和class,元素宽度高度、偏移、滚动条
- 第5天(就业班) BOM、window对象、事件、location对象、screen对象、Dom编程根据属性找节点、通过关系找节点、添加附件、联动框、操作元素的css样式、正则表达式
- JavaScript 节点操作Dom的常用属性和方法
- JavaScript DOM 创建元素并设置属性
- JavaScript DOM 创建元素并设置属性
- JavaScript DOM 中获取元素属性
- JavaScript DOM 中获取元素属性
- JavaScript操作dom最常用到的属性方法
- JS操作DOM元素属性和方法(转)
- JavaScript中操作有些DOM时关于文本节点和元素节点的问题。
- [转载 js]JavaScript节点操作DOMDocument属性和方法
- JavaScript操作DOM元素的childNodes和children区别
- JavaScript操作DOM节点元素重排
- javascript,jquery动态添加dom元素,并设定css属性,点击事件
- jquery13 attr() prop() val() addClass()等 : 对元素属性的操作
- DOM自定义元素属性与节点的操作以及元素的创建
- js操作dom元素的属性和方法
- js 获得dom元素class属性