语法: 元素.getAttribute(‘自定义属性名’)

功能:获取自定义属性

语法: 元素.setAttribute(‘自定义属性名’,’值’)

功能:设置自定义属性

语法: 元素.removeAttribute(‘自定义属性名’)

功能:删除自定义属性

#一.课堂案例

#1. 标签库

效果图:

功能思路分析:

\1. 找到标签库按钮,绑定点击事件。由于1个按钮既要展开又要做收起,所以需要用一个开关变量来判断(var flag = false;)。为假时点击展开,为真时点击收起。

\2. 循环给每一个li绑定点击事件。由于每一个li既要做选中又要做取消选中,所以需要用类名来判断( classList.contains() )。如果当前类名不存在,点击后则选中:

A. 添加类名( classList.add() )

B. **克隆(cloneNode(true))**一个副本,添加到指定区域( appendChild() )

如果当前类名存在,则取消选中:

A. 删除类名(classList.remove())

B. 找到已选中的所有标签,判断每一个选中的元素和点击的元素**自定义属性(getAttribute())**是否一致

C. 一致则删除(removeChild())

\3. 给克隆的元素绑定点击事件,实现双向删除,并去掉对应标签的类名。

\4. 个数限制,最多只能添加6个,通过选中标签的个数(sel.children.length)来判断。小于6个才可以选中标签,否则显示提示信息。当取消选中标签时,隐藏提示信息。

#二.今日小结

元素.getAttribute(‘自定义属性名’) 获取自定义属性

元素.setAttribute(‘自定义属性名’,’值’) 设置自定义属性

元素.removeAttribute(‘自定义属性名’) 删除自定义属性

元素.checked 复选框的选中状态

#三.作业

效果图:

功能思路分析:

功能一:渲染数据

\1. 声明两个数组存放数据,将第一个数组的内容渲染到第一个盒子,将第二个数组的内容渲染到第二个盒子(渲染: **map(function(item){}).join( ** ‘’));

功能二:标签转移

\2. 点击第一个盒子中的标签添加到第二个盒子中(appendChild())

\3. 点击第二个盒子中的标签添加到第一个盒子中

js下 Day04、DOM操作--自定义属性的更多相关文章

  1. js中的DOM操作汇总

    一.DOM创建 DOM节点(Node)通常对应于一个标签,一个文本,或者一个HTML属性.DOM节点有一个nodeType属性用来表示当前元素的类型,它是一个整数: Element,元素 Attrib ...

  2. JS核心之DOM操作 下

    目录: 1.节点类型之Document类型 2.节点类型之Element类型 3.节点类型之Text类型 4.综合小示例 -- 动态添加外部样式文件 5.查找元素的扩展方法 接上篇,我们先来看常用的三 ...

  3. 【2017-03-28】JS基础、DOM操作

    一.JS基础 1.javascript功能 ⑴进行数据运算 ⑵控制浏览器功能 ⑶控制元素的属性.样式.内容 2.javascript位置和格式 可以放在html页的任意位置,也可以创建一个以js结尾的 ...

  4. ref 和 React.js 中的 DOM 操作

    在 React.js 当中你基本不需要和 DOM 直接打交道.React.js 提供了一系列的 on*方法帮助我们进行事件监听,所以 React.js 当中不需要直接调用 addEventListen ...

  5. js练习【DOM操作】

    完成效果: 演示地址:http://codepen.io/anon/pen/jPbYWq HTML: <!DOCTYPE html> <html lang="en" ...

  6. [笔记]原生JS实现的DOM操作笔记

    原生JS实现的DOM一系列操作参考: 原生JavaScript封装DOM库 siblings: 原生JS-查找相邻的元素-siblings方法的实现 addClass,removeClass,hasC ...

  7. React.js 小书 Lesson21 - ref 和 React.js 中的 DOM 操作

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson21 转载请注明出处,保留原文链接和作者信息. 在 React.js 当中你基本不需要和 DO ...

  8. JS中的DOM操作怎样添加、移除、移动、复制、创建和查找节点

    DOM操作怎样添加.移除.移动.复制.创建和查找节点? (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元 ...

  9. JS中的DOM操作和事件

    [DOM树节点] DOM节点分为三大类: 元素节点. 属性节点. 文本节点: 文本节点.属性节点属于元素节点的子节点.操作时,均需要先取到元素节点,再操作子节点:可以使用getElement系列方法, ...

随机推荐

  1. CA证书与https讲解

    最近面试问到这个问题,之前了解过但答的不是很好,再补充补充一下https方面的知识. 备注:以下非原创文章. CA证书与https讲解 1.什么是CA证书. ◇ 普通的介绍信 想必大伙儿都听说过介绍信 ...

  2. 如何在Vegas中安装激活Continuum插件

    视频剪辑插件Boris FX Continuum安装程序包含了多达250种插件.而视频剪辑软件Vegas Pro 18 Suite中提供了Boris FX Continuum Film Style U ...

  3. FL Studio时间面板讲解

    今天我们一起来学习一下FL Studio时间面板的知识.看到这个名词我们一定就会想到该功能跟时间是脱不了关系的,是的,它就是用来显示时间的.它显示当前时间的方法不是很单一,而是有好几个,具体有哪几个下 ...

  4. 永别了,Dota2!

    永别了,Dota2 .输了游戏,我还有人生! 游戏中,总有那些喷子,自己玩的不好,经常说人家! 和大便打架,即使赢了,身上也非常臭! 所以对于这种人,敬而远之即可!不吵不闹,默默把锅扛起!赢了,就好说 ...

  5. zabbix地图显示全国延迟

    Zabbix 地图显示全国延迟 1.  效果图 2.  实现方法 将地图.png上传到zabbix为背景,上传红绿点.png为图标.然后新建主机关联模板为ICMP Ping,新建一个拓扑图调用地图为背 ...

  6. Codeforces Round #672 (Div. 2) B. Rock and Lever题解(思维+位运算)

    题目链接 题目大意 给你一个长为n(n<=1e5)的数组,让你求有多少对a[i]和a[j] (i!=j)满足a[i]&a[j]>a[i]^a[j] 题目思路 这些有关位运算的题目肯 ...

  7. 一万字详解 Redis Cluster Gossip 协议

    Redis Cluster Gossip 协议 大家好,我是历小冰,今天来讲一下 Reids Cluster 的 Gossip 协议和集群操作,文章的思维导图如下所示. 集群模式和 Gossip 简介 ...

  8. Java 安全之Java Agent

    Java 安全之Java Agent 0x00 前言 在前面发现很多技术都会去采用Java Agent该技术去做实现,比分说RASP和内存马(其中一种方式).包括IDEA的这些破解都是基于Java A ...

  9. 孪生网络入门(上) Siamese Net及其损失函数

    最近在多个关键词(小数据集,无监督半监督,图像分割,SOTA模型)的范畴内,都看到了这样的一个概念,孪生网络,所以今天有空大概翻看了一下相关的经典论文和博文,之后做了一个简单的案例来强化理解.如果需要 ...

  10. IDEA无法识别module

    如图,我爱算法模块无法识别 如此,放开注释部分 即可