HTML中的attribute和property_html/css_WEB-ITnose
attribute和property是常常被弄混的两个概念。
简单来说,property则是JS代码里访问的:
document.getElementByTagName('my-element').prop1 = 'hello';
attribute类似这种:
JS代码里访问attribute的方式是getAttribute和setAttribute:
document.getElementByTagName('my-element').setAttribute('attr1','Hello');
document.getElementByTagName('my-element').getAttribute('attr1','Hello');
二、区别
多数情况下,两者是等效的。在web标准中,常常会规定某attribute“反射”了同名的property。但是例外的情况还是不少的。
1. 名字不一致
最典型的是className,为了回避JavaScript保留字,JS中跟class attribute对应的property是className。
var div = document.getElementByTagName('div');
div.className //cls1 cls2
2. 类型不一致
最典型的是style,不接受字符串型赋值。
var div = document.getElementByTagName('div');
div.style // 对象
3. 语义不一致
如a元素的href属性。
上一篇: ajax.call和jquery.ajax比较,该如何处理
下一篇: 关于创建模型的10篇课程推荐
推荐阅读
-
css中应该滚瓜烂熟的属性_html/css_WEB-ITnose
-
div+csS中的一些技巧和浏览器兼容的办法_html/css_WEB-ITnose
-
一张图看懂css的position里的relative和absolute的区别_html/css_WEB-ITnose
-
CSS控制前台样式在360和chrome的兼容问题,跪求高手帮忙,在线等,,,,,,,_html/css_WEB-ITnose
-
不知大家遇到过这种问题么,一个层宽度设为100%,并设置背景图片,在浏览器中浏览,缩小窗口到滚动条出现,然后拖动滚动条到右侧,右侧的区域变成空白,怎么解决?_html/css_WEB-ITnose
-
div2 在 div3中, 希望div2的高度填满div3_html/css_WEB-ITnose
-
关于在HTML表格中插入背景图片图片重复显示的问题_html/css_WEB-ITnose
-
解说css中的margin属性缩写方式_html/css_WEB-ITnose
-
html中播放swf文件,怎么显示下面的开关面板的部分?_html/css_WEB-ITnose
-
使用css3背景渐变中的透明度来设置不同颜色的背景渐变_html/css_WEB-ITnose