属性操作

HTML attribute->DOM property

每个html 属性对应相应的DOM对象属性
这里写图片描述
可以通过JS进行属性操作
有以下三种方式

--- property accessor  属性访问器
--- getAttribute/setAttribute
--- dataset

property accessor属性访问器

属性访问器进行读取属性的操作

这里写图片描述


属性访问器进行写操作

直接通过个属性赋值的方式进行写操作
这里写图片描述


类型

通过属性访问器获取的属性是转换过的实用对象。
相应的属性会被浏览器转换成符合的类型。
如下图中,className的属性为String型。 onclick的属性为Function型
这里写图片描述

属性访问器操作的特点

缺点:
- 通用性—-名字异常
有的属性可以直接用属性名访问,有的由于关键字等原因不能直接访问
例如在访问器中class要用className代替。
- 扩展性


优点

  • 实用对象
    用属性访问器获取的是浏览器自动转换后的实用对象,可以直接使用,并不是所有的都是字符串,不必转换类型。

setAttribute getAttribute

读取属性 getAttribute

var attribute = element.getAttribute(attributeName);
通过传入属性的名称获取属性的值。因为是attributeName参数是以字符串形式传入的所以不存在名字冲突。
这里写图片描述


写属性 setAttribute

element.setAttribute(name, value);
name—-属性名称 string
value—-属性值 string
这里写图片描述


类型

属性字符串
和用属性访问器的实用对象不同,所有类型都是字符串类型,不能直接使用。要转换成需要的类型。

g/setAttribute操作的特点

缺点:
获取到的属性值仅仅是字符串
优点:
通用性好。

结合属性访问器和g/setAttribute的案例

实现登录界面中的登录按钮不能重复操作,用户连续第二次点击时将按钮不能使用并在视觉上置灰以告知用户不能点击
这里写图片描述
上图中使用的
button.disable = true;//使用属性访问器将功能禁用
button.setAttribute(‘class’, ‘disable’); //增加一个新类名,增加禁用后的样式。

总结:一般来说,纯字符串的方式就用g/setAttribute方式操作属性
如果是其它类型则用属性访问器来操作


dataset

用户自定义属性

HTMLElement.dataset
data-*属性集
元素上保存数据

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值