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 相关文章推荐
fckeditor 获取文本框值的实现代码
Feb 09 Javascript
javascript 循环读取JSON数据的代码
Jul 17 Javascript
JS实现在Repeater控件中创建可隐藏区域的代码
Sep 16 Javascript
iframe 父窗口和子窗口相互的调用方法集锦
Dec 15 Javascript
IE下通过a实现location.href 获取referer的值
Sep 04 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
Mar 04 Javascript
JavaScript学习笔记之DOM基础 2.4
Aug 14 Javascript
基于jQuery实现Div窗口震动特效代码-代码简单
Aug 28 Javascript
js return返回多个值,通过对象的属性访问方法
Feb 21 Javascript
非常实用的vue导航钩子
Mar 20 Javascript
解决layui中table异步数据请求不支持自定义返回数据格式的问题
Aug 19 Javascript
es6 for循环中let和var区别详解
Jan 12 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
用PHP实现多服务器共享SESSION数据的方法
2007/03/16 PHP
php实现四舍五入的方法小结
2015/03/03 PHP
PHP CodeIgniter框架的工作原理研究
2015/03/30 PHP
ThinkPHP实现静态缓存和动态缓存示例代码
2017/05/02 PHP
动态改变textbox的宽高的js
2006/10/26 Javascript
jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)
2010/05/24 Javascript
Javacript实现颜色梯度变化和渐变的效果代码
2013/05/31 Javascript
js确认删除对话框适用于a标签及submit
2014/07/10 Javascript
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
javascript中JSON对象与JSON字符串相互转换实例
2015/07/11 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
详谈js原型继承的一些问题
2017/09/06 Javascript
360提示[高危]使用存在漏洞的JQuery版本的解决方法
2017/10/27 jQuery
jQuery实现滚动效果
2017/11/17 jQuery
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
js 计数排序的实现示例(升级版)
2020/01/12 Javascript
vue 出现data-v-xxx的原因及解决
2020/08/04 Javascript
解决新建一个vue项目过程中遇到的问题
2020/10/22 Javascript
使用IronPython把Python脚本集成到.NET程序中的教程
2015/03/31 Python
Django中URLconf和include()的协同工作方法
2015/07/20 Python
python使用KNN算法识别手写数字
2019/04/25 Python
Django框架使用mysql视图操作示例
2019/05/15 Python
python下载库的步骤方法
2019/10/12 Python
Python求凸包及多边形面积教程
2020/04/12 Python
使用keras内置的模型进行图片预测实例
2020/06/17 Python
Python with语句用法原理详解
2020/07/03 Python
浅谈OpenCV中的新函数connectedComponentsWithStats用法
2020/07/05 Python
python3中TQDM库安装及使用详解
2020/11/18 Python
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
LN-CC中国:高端男装和女装的奢侈时尚目的地
2019/09/14 全球购物
股权收购意向书
2014/04/01 职场文书
竞选劳动委员演讲稿
2014/04/28 职场文书
2014年资料员工作总结
2014/11/18 职场文书
听课评课活动心得体会
2016/01/15 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery
一条 SQL 语句执行过程
2022/03/17 MySQL