IE6/7/8(Q)中元素的attribute与property内部实现是不分的,IE8部分分离,IE9实现彻底分离了。
如下:
<div id="myId" class="cls" userAttribute="test1">
<script type="text/javascript">
var div = document.getElementById('myId');
div.userProperty = 'test2';
alert(div.attributes.length); // IE6/7/8 -> 4 , [id,class,userAttribute,userProperty]
// IE9 -> 3, [id,class,userAttribute]
alert(div.userAttribute); // IE6/7/8 -> 'test1'
// IE9 -> undefined
alert(div.getAttribute('userAttribute')); // IE6/7/8/9 -> 'test1'
alert(div.getAttribute('userProperty')); // IE6/7/8 -> 'test2'
// IE9 -> null
</script>
注:Firefox/Safari/Chrome/Opera的表现同IE9。
关于attribute和property的详细分析强烈推荐w3help网站,猛击:http://w3help.org/zh-cn/causes/SD9006
分享到:
相关推荐
"Property和Attribute的区别" 在面向对象编程(Object-Oriented Programming)中,Property和Attribute都是常用的概念,但是它们之间存在着本质的区别。Property是指类向外提供的数据区域,是智能的字段,其中有get...
在IE6-7中,`attribute` 的处理方式与标准浏览器有所不同,可能导致访问和修改 `attribute` 的行为不一致。 另一方面,`property` 指的是JavaScript对象的属性,当DOM元素被视为JavaScript对象时,`property` 就是...
前言使用JavaScript操作DOM元素时往往涉及到两个概念:attribute 和 property。document.getElementById('te
一、’表亲戚’:attribute和property 为什么称attribute和property为’表亲戚’呢?因为他们既有共同处,也有不同点. attribute 是 dom 元素在文档中作为 html 标签拥有的属性; property 是 dom 元素在 js 中作为...
本文实例分析了C#中Property和Attribute的区别。分享给大家供大家参考。具体分析如下: 在C#中有两个属性,分别为Property和Attribute,两个的中文意思都有特性、属性之间,但是用法上却不一样,为了区别,本文暂把...
1. **数据绑定**:`PropertyGrid`可以通过`DataSource`属性与任何支持`ITypeDescriptorContext`接口的对象进行数据绑定。你可以将自定义类实例传递给它,这样`PropertyGrid`就会自动列出类中所有公开的属性。 2. **...
不同的浏览器可能在处理`property`和`attribute`时存在差异,尤其是在早期版本的IE中,这需要开发者在编写代码时特别注意。 了解这些区别后,开发者在处理HTML元素时能够更准确地控制其行为。在操作元素的属性时,...
在C#编程中,`property`和`attribute`是两个重要的概念,它们各自有特定的用途,理解并熟练掌握它们对于编写高效、可维护的代码至关重要。 首先,我们来看`property`。在C#中,`property`是一种封装机制,它提供了...
AOP(面向切面编程)是一种编程范式,它允许程序员将关注点分离,将横切关注点(如日志、事务管理、性能度量等)从核心业务逻辑中解耦出来。在.NET中,我们可以通过Attribute来实现AOP的功能,这就是标题中提到的...
Attribute与Property的区别 虽然在中文里“属性”这个词有时会被用来同时指代Property和Attribute,但实际上两者有着本质的不同: - **Property** 是一种特殊的.NET成员,它允许以类似字段的方式访问对象的数据,...
.NET框架允许我们控制Attribute的可见性,比如`Assembly`, `Module`, `Class`, `Struct`, `Enum`, `Constructor`, `Method`, `Property`, `Field`, `Event`, `Interface`, `Parameter`, `Delegate`, `Return`等。...
首先,我们需要理解Attribute与类的property成员之间的区别。虽然两者在中文中都被称为“属性”,但在.NET中它们是完全不同的概念。Property是类的一个成员,用于存储和检索数据,而Attribute则是用于附加信息到代码...
C#中的特性(Attribute)可以用来控制`PropertyGrid`中属性的显示方式。例如: - `DisplayNameAttribute`:改变属性的显示名称。 - `DescriptionAttribute`:提供属性的描述信息,会在属性下方以小字显示。 - `...
C#的Attribute是一种元数据,它允许我们向代码添加额外的信息,这些信息可以在编译时或运行时被程序集、编译器、反射或其他工具使用。Attribute不是代码的一部分,它们不直接影响程序的执行,但提供了方便的方式来...
### __attribute__ 在 C 语言中的使用方法 #### 一、引言 在 C 语言中,`__attribute__` 是 GNU 编译器集合 (GCC) 的一个扩展特性,它允许开发人员向函数、变量或类型添加元数据,从而增强编译时的错误检查能力并...