HTML中自定义属性并通过JS获取属性值

是的,HTML可以自定义属性。自定义属性的语法是使用 data- 前缀,后面跟上自定义的属性名。例如:

html 复制代码
<div id="example" data-custom="myValue">Hello World</div>

在这个例子中,data-custom 就是自定义属性,属性值为 myValue

要通过 JavaScript 获取这个自定义属性的值,有几种方法:

方法 1: 使用 getAttribute 方法

你可以使用 getAttribute 方法来获取自定义属性的值:

javascript 复制代码
const element = document.getElementById('example');
const customValue = element.getAttribute('data-custom');
console.log(customValue); // 输出 "myValue"

方法 2: 使用 dataset 属性

dataset 是一个更简洁的方式,它返回一个对象,其中包含了所有以 data- 开头的自定义属性。你可以直接通过属性名来访问:

javascript 复制代码
const element = document.getElementById('example');
const customValue = element.dataset.custom;
console.log(customValue); // 输出 "myValue"

使用 dataset 时,属性名会自动从 data- 后面的部分转换为驼峰命名法。如果自定义属性名为 data-custom-value,可以这样访问:

javascript 复制代码
const customValue = element.dataset.customValue;

这两种方法都可以有效获取自定义属性的值,选择哪种取决于对代码的可读性和简洁性的要求。

相关推荐
掘金者阿豪11 分钟前
打通KingbaseES与MyBatis:一篇详尽的Java数据持久化实践指南
前端·后端
RoyLin1 小时前
TypeScript设计模式:原型模式
前端·后端·node.js
我是天龙_绍1 小时前
vue Composables 组合式函数
前端
zjjuejin1 小时前
Maven项目的核心蓝图:POM文件
前端·maven
小气小憩1 小时前
“暗战”百度搜索页:Monica悬浮球被“围剿”,一场AI Agent与传统巨头的流量攻防战
前端·人工智能
前端付豪1 小时前
1、震惊!99% 前端都没搞懂的 JavaScript 类型细节
前端·javascript·面试
朝与暮1 小时前
js符号(Symbol)
前端·javascript
恋猫de小郭2 小时前
对于普通程序员来说 AI 是什么?AI 究竟用的是什么?
前端·flutter·ai编程
大怪v2 小时前
前端:人工智能?我也会啊!来个花活,😎😎😎“自动驾驶”整起!
前端·javascript·算法
我是天龙_绍2 小时前
vue3 props 如何写ts,进行类型标注
前端