JS Attribute属性操作详解


Posted in Javascript onMay 19, 2016

Attribute是属性的意思,文章仅对部分兼容IE和FF的Attribute相关的介绍。

attributes:获取一个属性作为对象

getAttribute:获取某一个属性的值

setAttribute:建立一个属性,并同时给属性捆绑一个值

createAttribute:仅建立一个属性

removeAttribute:删除一个属性

getAttributeNode:获取一个节点作为对象

setAttributeNode:建立一个节点

removeAttributeNode:删除一个节点

attributes可以获取一个对象中的一个属性,并且作为对象来调用,注意在这里要使用“[]”,IE在这里可以使用“()”,考虑到兼容性的问题,要使用“[]”。关于attributes属性的使用方式上,IE和FF有巨大的分歧,在此不多介绍。

attributes的使用方法:(IE和FF通用)

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.getElementById("sss").attributes["value"];
document.write(d.name);
document.write(d.value);
//显示value aaa
</script>

getAttribute,setAttribute,createAttribute,removeAttribute四兄弟的概念比较容易理解,使用方法也比较简单,唯一需要注意这几点:

1、createAttribute在使用的时候不需要基于对象的,document.createAttribute()就可以。

2、setAttribute,createAttribute在使用的时候不要使用name,type,value等单词,IE和FF的反应都奇怪的难以理解。

3、createAttribute在使用的时候如果只定义了名字,没有d.nodeValue = "hello";语句定义值,FF会认为是一个空字符串,IE认为是undefined,注意到这点就可以了。

getAttribute的使用方法:

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.getElementById("sss").getAttribute("value");
document.write(d);
//显示 aaa
</script>

setAttribute的使用方法:(你会发现多了一个名为good的属性hello)

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.getElementById("sss").setAttribute("good","hello");
alert(document.getElementById("t").innerHTML)
</script>

createAttribute的使用方法:(多了一个名为good的空属性)

<head>
    <meta charset="UTF-8">
    <title></title>
    <script>
      window.onload = function (){
        var oBox = document.getElementById('box');
        alert( document.body.innerHTML );
        oBox.setAttribute('value','name');
        alert( document.body.innerHTML );
        attr = document.createAttribute('hallo');
        alert( document.body.innerHTML );/*同上*/
        attr.nodeValue = 'world';/*对自定义属性进行编辑*/
        alert( document.body.innerHTML );/*同上*/
        oBox.setAttributeNode(attr);/*对标签插入自定义属性*/
        alert( document.body.innerHTML );/*改变*/
      };
    </script>
  </head>
  <body>
    <ul id="box">
    </ul>
  </body>

removeAttribute的使用方法:(少了一个)

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.getElementById("sss").removeAttribute("value");
alert(document.getElementById("t").innerHTML)
</script>

getAttributeNode,setAttributeNode,removeAttributeNode三个方法的特点是都直接操作一个node(节点),removeAttributeNode在一开始的时候总会用错,但是充分理解了node的含义的时候,就能够应用自如了。

getAttributeNode的使用方法:

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.getElementById("sss").getAttributeNode("value"); 
document.write(d.name);
document.write(d.value);
//显示 value aaa
</script>

setAttributeNode的使用方法:

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.createAttribute("good");
document.getElementById("sss").setAttributeNode(d);
alert(document.getElementById("t").innerHTML);
</script>

removeAttributeNode的使用方法:

<body>
<div id = "t"><input type = "hidden" id = "sss" value = "aaa"></div>
</body>
<script>
var d = document.getElementById("sss").getAttributeNode("value")
document.getElementById("sss").removeAttributeNode(d); 
alert(document.getElementById("t").innerHTML);
</script>
更多的关于attributes属必性问题,可在w3school中查询!

以上这篇JS Attribute属性操作详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用正则获取指定路径文件的名称
Feb 27 Javascript
CSS(js)限制页面显示的文本字符长度
Dec 27 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
Jun 24 Javascript
JS实现仿苹果底部任务栏菜单效果代码
Aug 28 Javascript
莱鸟介绍javascript onclick事件
Jan 06 Javascript
关于安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法
May 17 Javascript
Canvas 制作动态进度加载水球详解及实例代码
Dec 09 Javascript
javascript基于原型链的继承及call和apply函数用法分析
Dec 15 Javascript
用JavaScript做简易的购物车的代码示例
Oct 20 Javascript
JS中注入eval, Function等系统函数截获动态代码
Apr 03 Javascript
微信小程序开发实现消息推送
Nov 18 Javascript
JS实现电商商品展示放大镜特效
Jan 07 Javascript
jQuery点击输入框显示验证码图片
May 19 #Javascript
Bootstrap教程JS插件滚动监听学习笔记分享
May 18 #Javascript
Node.js刷新session过期时间的实现方法推荐
May 18 #Javascript
JS+Canvas 实现下雨下雪效果
May 18 #Javascript
如何判断Javascript对象是否存在的简单实例
May 18 #Javascript
jquery遍历json对象集合详解
May 18 #Javascript
深入理解JavaScript中的对象复制(Object Clone)
May 18 #Javascript
You might like
重料打造自己的“宝马”---第三代
2021/03/02 无线电
php数据库连接时容易出错的特殊符号问题
2010/09/01 PHP
PHP导入Excel到MySQL的方法
2011/04/23 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
Extjs 几个方法的讨论
2010/01/28 Javascript
动态加载外部javascript文件的函数代码分享
2011/07/28 Javascript
14个有用的Jquery技巧分享
2015/01/08 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
JavaScript中通过提示框跳转页面的方法
2016/02/14 Javascript
JS基于clipBoard.js插件实现剪切、复制、粘贴
2016/05/03 Javascript
js接收并转化Java中的数组对象的方法
2016/08/11 Javascript
js拼接html字符串的注意事项
2016/10/13 Javascript
利用jQuery解析获取JSON数据
2017/04/08 jQuery
JavaScript实现三级联动效果
2017/07/15 Javascript
详解vue-cli与webpack结合如何处理静态资源
2017/09/19 Javascript
关闭Vue计算属性自带的缓存功能方法
2018/03/02 Javascript
详解Vue Elementui中的Tag与页面其它元素相互交互的两三事
2018/09/25 Javascript
微信小程序实现左滑动删除效果
2020/03/30 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
利用Python在一个文件的头部插入数据的实例
2018/05/02 Python
Python 实现还原已撤回的微信消息
2019/06/18 Python
python绘制汉诺塔
2021/03/01 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
外贸采购员求职的自我评价
2013/11/26 职场文书
旺仔牛奶广告词
2014/03/20 职场文书
书香校园建设方案
2014/05/02 职场文书
模具专业求职信
2014/06/26 职场文书
心理咨询专业自荐信
2014/07/07 职场文书
2014年党员自我评议总结
2014/09/23 职场文书
机关副主任个人四风问题整改措施
2014/09/26 职场文书
2015年计算机教学工作总结
2015/07/22 职场文书
公司员工宿舍管理制度
2015/08/07 职场文书
幼儿园六一儿童节开幕词
2016/03/04 职场文书
js判断两个数组相等的5种方法
2022/05/06 Javascript
python高温预警数据获取实例
2022/07/23 Python