浅谈JS读取DOM对象(标签)的自定义属性

yizhihongxing

一、什么是DOM对象自定义属性

在HTML标签中,我们可以自定义属性,比如:<div data-id="123">自定义属性</div>,这里的data-id即为自定义属性。

在JavaScript中,我们可以通过DOM对象的dataset属性来读取自定义属性的值。

二、JS读取DOM对象(标签)的自定义属性

1.读取单个DOM对象的自定义属性

通过DOM对象的dataset属性中的键值对读取自定义属性值,示例如下:

<div id="myDiv" data-id="123">自定义属性</div>
var div = document.getElementById("myDiv");
var id = div.dataset.id;
console.log(id); //输出:123

2.读取多个DOM对象的自定义属性

如果需要读取多个DOM对象的自定义属性,可以采用循环遍历所有的DOM对象,示例如下:

<div class="myDiv" data-id="123">自定义属性1</div>
<div class="myDiv" data-id="456">自定义属性2</div>
var divs = document.getElementsByClassName("myDiv");
for (var i = 0; i < divs.length; i++) {
  var id = divs[i].dataset.id;
  console.log(id);
}
//输出:123
//输出:456

三、示例说明

1.示例一:利用自定义属性实现图片预加载

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>图片预加载</title>
    <style>
      img {
        display: none;
      }
    </style>
  </head>
  <body>
    <img data-src="./image/1.jpg" />
    <img data-src="./image/2.jpg" />
    <img data-src="./image/3.jpg" />
    <img data-src="./image/4.jpg" />
    <img data-src="./image/5.jpg" />
    <script>
      var imgs = document.getElementsByTagName("img");
      for (var i = 0; i < imgs.length; i++) {
        var src = imgs[i].dataset.src;
        if (src) {
          imgs[i].src = src;
        }
      }
    </script>
  </body>
</html>

在这个例子中,我们利用自定义属性data-src来保存需要预加载的图片地址,然后通过遍历所有的img标签,将地址赋值给src属性实现了图片的预加载。

2.示例二:根据自定义属性值设置CSS样式

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>根据自定义属性值设置CSS样式</title>
    <style>
      .myDiv[data-color="green"] {
        color: green;
      }
      .myDiv[data-color="blue"] {
        color: blue;
      }
    </style>
  </head>
  <body>
    <div class="myDiv" data-color="green">绿色字体</div>
    <div class="myDiv" data-color="blue">蓝色字体</div>
  </body>
</html>

在这个例子中,我们利用自定义属性data-color来保存需要设置的字体颜色,然后通过设置不同的CSS样式实现了根据自定义属性值设置CSS样式的效果。

以上就是浅谈JS读取DOM对象(标签)的自定义属性的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈JS读取DOM对象(标签)的自定义属性 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • JS限制输入框输入的实现代码

    实现JS限制输入框输入有多种方法,本攻略将介绍两种实现方式,分别是使用input事件和使用正则表达式。下面将分别进行详细讲解。 使用input事件进行限制输入 input事件可监听输入框中的输入,可以通过在事件回调函数中处理字符串来限制输入。下面是一个示例代码,将限制输入框只能输入数字: <input type="text" id=…

    JavaScript 2023年6月10日
    00
  • 扩展JavaScript功能的正确方法(译文)

    首先需要解释一下什么是扩展JavaScript功能的正确方法,其实就是指通过使用第三方库或者自己编写代码模块的方式增强基本的JavaScript功能。以下是详细的攻略: 1. 了解JavaScript基础知识 在进行任何扩展功能之前,首先要掌握JavaScript的基础知识,了解它的语法、变量、函数、数据类型等基本元素,只有这样才能更好地扩展它的功能。推荐阅…

    JavaScript 2023年5月18日
    00
  • 深入理解JavaScript系列(2) 揭秘命名函数表达式

    当我们在书写JavaScript代码的时候,常常会使用函数表达式来定义函数。在函数表达式中,我们可以选择使用具名的函数表达式或者是匿名的函数表达式。而其中,命名函数表达式是比较少用的一种,因为它容易出现一些奇怪的问题。那么在这篇文章中,我们将会深入地探讨命名函数表达式的原理,以及解决其中可能出现的一些问题。 什么是命名函数表达式 命名函数表达式就是在函数表达…

    JavaScript 2023年6月10日
    00
  • 一个不错的可以检测多中浏览器的函数和其它功能第2/2页

    函数概述 这是一个可以检测多种浏览器的 JavaScript 函数,它可以帮助你判断当前的浏览器类型和版本号,并且还可以检测浏览器是否支持某些功能。这个函数定义比较长,但是使用起来非常方便。下面是这个函数的代码: function detectBrowser() { var ua = navigator.userAgent; var browserName;…

    JavaScript 2023年6月11日
    00
  • javascript 判断中文字符长度的函数代码

    下面是详细的攻略。 1. 需求说明 在实际开发中,有时候需要限制输入框中的字符长度,尤其是中英文混合的情况下,一个中文字符长度应该算比一个英文字符长度大。 因此,需要编写一个 Javascript 函数用来判断字符串中的中文字符长度。 比如,字符串 “Hello,世界!” 中包含了一个英文逗号和两个中文字符,因此总长度应该为 8。 2. 代码实现 下面是一个…

    JavaScript 2023年5月19日
    00
  • JS实现的相册图片左右滚动完整实例

    下面是关于“JS实现的相册图片左右滚动完整实例”的完整攻略。 一、前提准备 在实现相册图片左右滚动之前,需要先准备好图片: 准备好需要展示的图片,推荐使用图片大小相似的图片,可以增加用户体验。 把所有图片用一个ul包起来,这样便于控制整体样式和布局。 设置好ul和li的基础样式,如ul的宽度为图片宽度总和,li的宽度为单张图片宽度。 二、实现 实现相册图片左…

    JavaScript 2023年5月28日
    00
  • 最通俗易懂的javascript变量提升详解

    最通俗易懂的Javascript变量提升详解 什么是变量提升 变量提升是Javascript的一种默认行为,指在代码执行期间,Javascript将变量和函数声明提升到它们所在作用域的顶部,以便能够访问它们。这意味着可以在声明之前使用变量或函数。 变量提升的情况 Javascript中有两种类型的声明:变量声明和函数声明。这两种声明在变量提升时会被解析并移动…

    JavaScript 2023年6月11日
    00
  • 微信小程序tabBar模板用法实例分析【附demo源码下载】

    微信小程序tabBar模板用法实例分析 简介 本文将介绍微信小程序的tabBar模板用法,并提供一个demo供下载。 tabBar模板 tabBar模板可以让开发者更方便地实现小程序的底部导航栏功能。tabBar可以包含2-5个按钮,每个按钮对应一个不同的页面。当用户点击按钮时,小程序会自动跳转到相应的页面。 tabBar模板的常用属性有以下几个: back…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部