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;

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

相关推荐
铁皮饭盒20 分钟前
bun直接tsx,优雅!
javascript·后端
Csvn2 小时前
Monorepo 迁移血泪史:从 Multi-Repo 到 Turborepo,这 3 个坑我帮你踩完了
前端
星栈2 小时前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
用户987409238872 小时前
用 Remotion + edge-tts 打造中文教学视频全自动流水线
前端
风骏时光牛马2 小时前
Less前端工程化实战:变量混合器与项目样式分层落地
前端
假如让我当三天老蒯2 小时前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试
SameX2 小时前
iOS 独立开发实践:用 MapKit + 像素渲染实现 Citywalk 轨迹地图 App「雁过留痕」
前端
_柳青杨2 小时前
一文吃透 Node.js 事件循环:从原理到 Node 20+ 重大变更
javascript·后端
skyey3 小时前
页面加载时,深色模式闪白的问题解决
前端
IT_陈寒3 小时前
Java 并行流把我坑惨了,这6小时加班值了
前端·人工智能·后端