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动态创建、获取、删除属性的几种方式的更多相关文章

  1. 原生JS动态添加和删除类

    原生JS动态添加和删除类 由于需要, 给按钮组监听点击事件(要求用事件委托),当有一个按钮被点击时,相应的给该按钮添加一个类(激活类),其他没有点击的按钮就要移出该类 添加和和删除类有三种方法 首先等 ...

  2. js动态创建表格,删除行列的小例子

    js动态创建表格,删除行列的实例代码. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...

  3. js动态创建和删除option

    1.动态创建select function createSelect(){           var mySelect = document.createElement("select&q ...

  4. 原生js动态创建文本内容的几种方式

    1.通过CreateTextNode文本节点 首先创建该元素(元素节点),然后向一个已存在的元素追加该文本节点 <!DOCTYPE html> <html> <body& ...

  5. 通过JS动态创建和删除HTML元素

    <script type="text/javascript" language="Javascript"> function InputOnBlur ...

  6. 通过原生js对DOM事件的绑定的几种方式总汇

    在网页开发中经常会有交互操作,比如点击一个dom元素,需要让js对该操作做出相应的响应,这就需要对Dom元素进行事件绑定来进行处理,js通常有三种常用的方法进行事件绑定:在DOM元素中直接绑定:在Ja ...

  7. 原生js动态添加style,添加样式

    原生js动态添加style,添加样式 第一种 var style="[assign-url='"+str+"']{display:initial}"; var ...

  8. js动态创建样式: style 和 link

    js动态创建样式: style 和 link ie6 不能 document.createElement('style') 然后append到head标签里.所以就找到这样个好文章 有很多提供动态创建 ...

  9. 给js动态创建的对象绑定事件

    1.使用原生JS动态为动态创建的对象绑定事件 1-1.创建一个function,用来兼容IE8以下浏览器添加事件 function addEvent(el, type, fn) {  if(el.ad ...

随机推荐

  1. R:ggplot2数据可视化——进阶(1)

    ,分为三个部分,此篇为Part1,推荐学习一些基础知识后阅读~ Part 1: Introduction to ggplot2, 覆盖构建简单图表并进行修饰的基础知识 Part 2: Customiz ...

  2. 如何在IDEA中导入一个普通的java工程

    1.如下: 2.如下,选中要导入的工程: 3.如下: 4.如下图 5.点击next,后如下图: 6.点击next后,如下图: 7.点击next后,如下图: 8.点击next后,如下图: 9.点击nex ...

  3. Maven项目使用Nexus作为远程仓库的settings.xml配置

    Maven项目使用Nexus作为远程仓库的settings.xml配置(转) 在自己电脑C:\Users\hanmm\.m2\下的setting.xml. 1.服务器配置 <server> ...

  4. Net基础篇_学习笔记_第十天_方法_方法的调用问题

    在Main()函数中,调用Test()函数,我们管Main()函数称之为调用者,管Test()函数称之为被调用者.如果被调用者想要得到调用者的值:1).传递参数.2).使用静态字段来模拟全局变量.如果 ...

  5. Dart语言概览

    ## Dart特性 Dart同时支持JIT(Just In Time,即时编译)和AOT(Ahead of Time,运行前编译)两种编译模式. **JIT** 在运行时即时编译,在开发周期中使用,可 ...

  6. 15 (OC)* UIGesture

    前言 本文主要内容如下: 1. UIGestureRecognizer 属性.方法.代理和七个子类详解. 2. 讲讲 UIGestureRecognizer 和 UITouch 事件的关系. 3. 讲 ...

  7. ReactNative之Redux详解

    用redux有一段时间了,感觉还是有必要把其相关的知识点系统的总结一下的,毕竟好记性不如烂笔头.上篇博客更新了关于<ES6中的迭代器.Generator函数以及Generator函数的异步操作& ...

  8. Hadoop 之 分布式缓存的原理和方法——DistributedCache

    1.什么时Hadoop的分布式缓存 答:在执行MapReduce时,可能Mapper之间需要共享一些信息,如果信息量不大,可以将其从HDFS中加载到内存中,这就是Hadoop分布式缓存机制. 2.如何 ...

  9. Mysql学习笔记整理之数据库优化

    数据库性能瓶颈的原因 数据库连接数 数据量大 硬件资源限制 数据性能优化方案 sql优化       2.缓存        3.建好索引    4.读写分离        5. 分库分表 慢日志查  ...

  10. 用 CocosCreator 快速开发推箱子游戏

    游戏总共分为4个功能模块: - 开始游戏(menuLayer) - 关卡选择(levelLayer) - 游戏(gameLayer) - 游戏结算(gameOverLayer) Creator内组件效 ...