js中Attribute和Property区别
js中Attribute和Property区别
js中Attribute和Property区别一、JS中Property
属性,就像C#等高级语言可以.获取或者设置其值;
特点
1、其值可以为任意值
2、名字区分大小写。
3、当调用innerHTML时不会显示出来。
二、JS中Attribute
特性,每一个dom元素都有一个attributes属性来存放所有的attribute节点,通过getAttribute()和setAttribute()方法来进行获取和操作。
特点
1、只能为字符串
2、名字与大小写无关,因为HTML attribute是大小写无关的。
3、当调用innerHTML时会显示出来。
4、你可以通过调用 attributes 属性对它们进行遍历。
三、JS中Property和Attribute的共性
常用的Attribute,例如id、class、title等,已经被作为Property附加到DOM对象上,可以和Property一样取值和赋值。但是自定义的Attribute,就不会有这样的特殊优待
例如
<li id="li1" class="liClass" title="liTitle" title1="liTitle1">100</li>
这个li里面的“title1”就不会变成Property。
即,只要是DOM标签中出现的属性(html代码),都是Attribute。然后有些常用特性(id、class、title等),会被转化为Property。
四、Attribute取值
用getAttribute()来操作即可。
var id = li1.getAttribute("id");
var className1 = li1.getAttribute("class");
var title = li1.getAttribute("title");
var title1 = li1.getAttribute("title1"); //自定义特性
五、Attribute赋值
li1.setAttribute('class', 'a');
li1.setAttribute('title', 'b');
li1.setAttribute('title1', 'c');
li1.setAttribute('title2', 'd');
用setAttrbute()赋值,任何Attribute都可以,包括自定义的。而且,赋值的Attribute会立刻表现到DOM元素上。
setAttribute()的两个参数,都必须是字符串。即对特性Attribute职能赋值字符串,而对属性Property就可以赋任何类型的值了。
六、Property取值
属性取值很简单。取任何属性的只,用“.”就可以:
var id = li1.id;
var className = li1.className;
var childNodes = li1.childNodes;
var attrs = li1.attributes;
class特性在变成属性时,名字改成了“className”,因此li1.className和li1.getAttrbute('class')相同。
七、Property赋值
赋值和基本的js对象属性赋值一样,用“.”即可:
li1.className = 'a';
li1.align = 'center';
- js实现div(javascript拖曳互换div的位置实现示例)
- javascript函数工具有哪些(如何让你的JavaScript函数更加优雅详解)
- js三级联动说明(基于JavaScript实现省市联动效果)
- javascript中定义数组的方法(JavaScript中数组sort方法的基本使用与踩坑记录)
- js防抖用法(JavaScript的防抖和节流案例)
- Javascript计算密码的强度
- javascript和jquery的区别详解(JavaScript与JQuery框架基础入门教程)
- web中如何预防xss攻击(详解前端安全之JavaScript防http劫持与XSS)
- javascript如何实现异步任务(JavaScript 中如何实现并发控制)
- 生成随机数javascript(JavaScript实现随机生成验证码及校验)
- javascript中求二维数组最小值(javascript实现数组最大值和最小值的6种方法)
- javascript dom事件模型(JavaScript WebAPI、DOM、事件和操作元素实例详解)
- js数组去重的十种方法(JavaScript常用数组去重实战源码)
- javascript中需要注意的几个细节
- js中事件的三个阶段(JavaScript中事件冒泡机制示例详析)
- javascript 开发网站(帮你提高开发效率的JavaScript20个技巧)
- 这竟然是捏出来的 20种橡皮泥玩法让你轻松hold住魔娃(这竟然是捏出来的)
- 自制橡皮泥(自制橡皮泥)
- 还在卖 禁药西布曲明网上论斤卖(还在卖禁药西布曲明网上论斤卖)
- 微商在朋友圈热卖的 DL减肥咖啡 含违禁药物,你还敢买吗(微商在朋友圈热卖的)
- 八一节,说说中国女兵(八一节说说中国女兵)
- 王治郅菜鸟赛季已让八一带入正轨,大郅七大经典语录或是成功秘诀(王治郅菜鸟赛季已让八一带入正轨)
热门推荐
- centos上docker的部署(CentOS8下的Docker使用详解)
- docker 跨主机的网络通信(docker 基于golang镜像构建 ssh服务的方法)
- 创建自己的Visual Studio工程模板
- python装饰器怎么设置(深入了解和应用Python 装饰器 @decorator)
- python如何编写一个用户登录系统(Python实现的登录验证系统完整案例基于搭建的MVC框架)
- mysql分组函数入门(详解MySQL 数据分组)
- Sql Server 更新锁
- 阿里云ecs所有文件备份到本地(阿里云ECS服务器的系统重装、快照备份、恢复数据回滚教程)
- filter的用法css(CSS filter 有什么神奇用途)
- css3动画按钮加光晕效果(CSS3 制作的悬停缩放特效)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9