原生js动态创建、获取、删除属性的几种方式
1.创建属性
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>动态创建属性</title>
<style>
.democlass{color:blue;}
</style>
</head>
<body> <ul class="container">
<li class="child">Coffee</li>
<li class="child">Tea</li>
<li class="child">Coffee</li>
<li class="child">Tea</li>
</ul> <script>
/*第一种方法(此方法仅限于css样式)
var child = document.getElementsByTagName("li")[0];
child.style.color="red";
*/ /*第二种方法
document.getElementsByTagName("li")[0].setAttribute("class","democlass");
*/
//第三种方法
var newStyle=document.getElementsByTagName("li")[1];
var newAttr = document.createAttribute("class");
newAttr.nodeValue="democlass"; //使用value或nodeValue均可
newStyle.setAttributeNode(newAttr);
</script>
</body>
</html> getdd[i].className="selected"; //通过数组设置标签直接添加类名
2.获取属性
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>动态获取属性</title>
<style>
.democlass{
color:blue;
}
</style>
</head>
<body>
<p id="demo"></p>
<ul class="example">
<li class="child1">Coffee</li>
<li class="child2">Tea</li>
<li class="child3">Coffee</li>
<li class="child4">Tea</li>
</ul> <script>
/*第一种方式:返回指定属性名的属性值
var getAttr=document.getElementsByTagName("li")[0].getAttribute("class");
document.getElementById("demo").innerHTML=getAttr;
*/
//第二种方式:返回指定属性名的属性值,以Attr对象
var getAttr=document.getElementsByTagName("li")[0].getAttributeNode("class").value;
document.getElementById("demo").innerHTML=getAttr;
//二种结果都返回child1
</script>
</body>
</html>
3.删除属性(文字颜色)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>动态删除属性</title>
<style>
.democlass{
color:blue;
}
</style>
</head>
<body>
<p id="demo"></p>
<ul class="example">
<li class="child1">Coffee</li>
<li class="child2 democlass">Tea</li>
</ul> <script>
/*第一种方式:删除指定的文字颜色属性
document.getElementsByTagName("li")[1].removeAttribute("class"); */
//第二种方式:删除指定的文字颜色属性,并以 Attr Node 对象返回被删除的属性
var n=document.getElementsByTagName("li")[1];
var a=n.getAttributeNode("class");
n.removeAttributeNode(a);
/*
此方法与 removeAttributeNode() 方法的差异是:removeAttributeNode() 方法删除指定的 Attr 对象,而此方法删除具有指定名称的属性。结果是相同的。同时此方法不返回值,而 removeAttributeNode() 方法返回被删除的属性,以 Attr 对象的形式。
*/
</script>
</body>
</html>
如果仅仅只是添加类:document.getElementById("myDIV").classList.add("mystyle")
原生js动态创建、获取、删除属性的几种方式的更多相关文章
- 原生JS动态添加和删除类
原生JS动态添加和删除类 由于需要, 给按钮组监听点击事件(要求用事件委托),当有一个按钮被点击时,相应的给该按钮添加一个类(激活类),其他没有点击的按钮就要移出该类 添加和和删除类有三种方法 首先等 ...
- js动态创建表格,删除行列的小例子
js动态创建表格,删除行列的实例代码. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...
- js动态创建和删除option
1.动态创建select function createSelect(){ var mySelect = document.createElement("select&q ...
- 原生js动态创建文本内容的几种方式
1.通过CreateTextNode文本节点 首先创建该元素(元素节点),然后向一个已存在的元素追加该文本节点 <!DOCTYPE html> <html> <body& ...
- 通过JS动态创建和删除HTML元素
<script type="text/javascript" language="Javascript"> function InputOnBlur ...
- 通过原生js对DOM事件的绑定的几种方式总汇
在网页开发中经常会有交互操作,比如点击一个dom元素,需要让js对该操作做出相应的响应,这就需要对Dom元素进行事件绑定来进行处理,js通常有三种常用的方法进行事件绑定:在DOM元素中直接绑定:在Ja ...
- 原生js动态添加style,添加样式
原生js动态添加style,添加样式 第一种 var style="[assign-url='"+str+"']{display:initial}"; var ...
- js动态创建样式: style 和 link
js动态创建样式: style 和 link ie6 不能 document.createElement('style') 然后append到head标签里.所以就找到这样个好文章 有很多提供动态创建 ...
- 给js动态创建的对象绑定事件
1.使用原生JS动态为动态创建的对象绑定事件 1-1.创建一个function,用来兼容IE8以下浏览器添加事件 function addEvent(el, type, fn) { if(el.ad ...
随机推荐
- 最小生成树问题---Prim算法学习
一个具有n个节点的连通图的生成树是原图的最小连通子集,它包含了n个节点和n-1条边.若砍去任一条边,则生成树变为非连通图:若增加一条边,则在图中形成一条回路.本文所写的是一个带权的无向连通图中寻求各边 ...
- java中自定义注解的应用
要想深刻的理解注解,我们必须能实现自己的注解,然后应用自己的注解去实现特定的业务,使用注解可以更优雅的做到某些事情. 有这样一个场景,在需要文件导出时,我们需要将一个model中的一些重要字段导出到c ...
- 【Offer】[12] 【矩阵中的路径】
题目描述 思路分析 Java代码 代码链接 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上 ...
- 每天学会一点点(map常量)
map常用的声明方式(使用静态代码块): public final static Map map = new HashMap(); static { map.put("key1", ...
- SpringBoot启动原理
SpringBoot启动原理 我们开发任何一个Spring Boot项目,都会用到如下的启动类: @SpringBootApplication public class Application { p ...
- SpringBoot 2 快速整合 | Hibernate Validator 数据校验
概述 在开发RESTFull API 和普通的表单提交都需要对用户提交的数据进行校验,例如:用户姓名不能为空,年龄必须大于0 等等.这里我们主要说的是后台的校验,在 SpringBoot 中我们可以通 ...
- Python集训营45天—Day03
目录 1. 分支结构 1.1 初步介绍 1.2 使用案例 1.3 练习 2.循环结构 1.1 初步介绍 1.2 使用案例 1. 分支结构 1.1 初步介绍 至今,我们所写的Python代码都是顺序执行 ...
- 全方位深度剖析PHP7底层源码(已完结)
第1章 课程介绍本章主要介绍课程要讲的知识点,以及课程要求等. 第2章 PHP7的新特性本章主要介绍PHP7的新特性,做基准测试,与PHP5对比验证PHP7的性能提升程度,引出对PHP7源码学习的必要 ...
- 将字符串转换成json格式
1.引入json依赖,在pom.xml文件里添加如下内容 <!--Json array start --> <dependency> <groupId>common ...
- 删除linux自带jdk
提示:error: can't create transaction lock on /var/lib/rpm/.rpm.lock (Permission denied):代表权限不够 执行:su r ...