当前位置: 首页 > news >正文

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

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

<div id="example" data-custom="myValue">Hello World</div>

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

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

方法 1: 使用 getAttribute 方法

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

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

方法 2: 使用 dataset 属性

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

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

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

const customValue = element.dataset.customValue;

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

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【生日视频制作】农村大马路绿色墙体广告标语喷漆AE模板修改文字软件生成器教程特效素材【AE模板】
  • SpringMVC 笔记篇
  • jmeter的聚合报告生成测试报告的方法(生成.HTML模式)
  • 十一. 常用类
  • Gamma基线估算
  • 关于OBI 在unity URP环境下使用的正确步骤
  • 鸿蒙项目签名配置
  • 请解释Java中的对象克隆机制,并讨论浅拷贝和深拷贝的区别。什么是Java中的封装?请举例说明如何通过封装实现数据隐藏和访问控制。
  • 推荐10个开源且实用的大模型
  • 财富知识的认知(一)
  • element input限制输入框只能输入数字
  • Vue 3 Composition API 中如何正确添加表单项副本到数组
  • 快讯 | 阿里开源Qwen2-VL视觉大模型:刷新多模态AI性能
  • 【华为】轻松get!eNSP登录无线AC Web界面的新姿势
  • 反向迭代器:reverse_iterator的实现
  • JavaScript-如何实现克隆(clone)函数
  • 分享的文章《人生如棋》
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • Debian下无root权限使用Python访问Oracle
  • github指令
  • golang 发送GET和POST示例
  • Hexo+码云+git快速搭建免费的静态Blog
  • Linux中的硬链接与软链接
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • Python 反序列化安全问题(二)
  • Twitter赢在开放,三年创造奇迹
  • Vim Clutch | 面向脚踏板编程……
  • 阿里云Kubernetes容器服务上体验Knative
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 给新手的新浪微博 SDK 集成教程【一】
  • 猴子数据域名防封接口降低小说被封的风险
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 使用agvtool更改app version/build
  • 用Python写一份独特的元宵节祝福
  • 鱼骨图 - 如何绘制?
  • 云大使推广中的常见热门问题
  • PostgreSQL之连接数修改
  • ​​​【收录 Hello 算法】10.4 哈希优化策略
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • #NOIP 2014# day.1 T2 联合权值
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • (1)(1.13) SiK无线电高级配置(六)
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (175)FPGA门控时钟技术
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (html转换)StringEscapeUtils类的转义与反转义方法
  • (LeetCode 49)Anagrams
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (过滤器)Filter和(监听器)listener
  • (接上一篇)前端弄一个变量实现点击次数在前端页面实时更新