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 相关文章推荐
javascript 播放器 控制
Jan 22 Javascript
11款基于Javascript的文件管理器
Oct 25 Javascript
EditPlus注册码生成器(js代码实现)
Mar 25 Javascript
javascript的document.referrer浏览器支持、失效情况总结
Jul 18 Javascript
JS中的forEach、$.each、map方法推荐
Apr 05 Javascript
jquery attr()设置和获取属性值实例教程
Sep 25 Javascript
JS SetInterval 代码实现页面轮询
Aug 11 Javascript
原生JS使用Canvas实现拖拽式绘图功能
Jun 05 Javascript
简单分析js中的this的原理
Aug 31 Javascript
vue选项卡切换登录方式小案例
Sep 27 Javascript
如何正确理解vue中的key详解
Nov 02 Javascript
VUE解决跨域问题Access to XMLHttpRequest at
May 06 Vue.js
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的网址
2006/11/25 PHP
wamp服务器访问php非常缓慢的解决过程
2015/07/01 PHP
PHP环境搭建(php+Apache+mysql)
2016/11/14 PHP
php 实现Hash表功能实例详解
2016/11/29 PHP
微信开发之获取JSAPI TICKET
2017/07/07 PHP
PHP后台实现微信小程序登录
2018/08/03 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
Javascript 面向对象(一)(共有方法,私有方法,特权方法)
2012/05/23 Javascript
js脚本获取webform服务器控件的方法
2014/05/16 Javascript
jQuery设置和获取HTML、文本和值示例
2014/07/08 Javascript
关于JS 预解释的相关理解
2016/06/28 Javascript
javascript运算符语法全面概述
2016/07/14 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
js数组常用操作方法小结(增加,删除,合并,分割等)
2016/08/02 Javascript
jquery插件treegrid树状表格的使用方法详解(.Net平台)
2017/01/03 Javascript
JavaScript登录记住密码操作(超简单代码)
2017/03/22 Javascript
vue-router+nginx 非根路径配置方法
2018/06/30 Javascript
js html实现计算器功能
2018/11/13 Javascript
微信小程序开发摇一摇功能
2019/11/22 Javascript
JS正则表达式常见函数与用法小结
2020/04/13 Javascript
Python实现的一个自动售饮料程序代码分享
2014/08/25 Python
详解Python中的array数组模块相关使用
2016/07/05 Python
tensorflow创建变量以及根据名称查找变量
2018/03/10 Python
Python各种扩展名区别点整理
2020/02/27 Python
Python爬取梨视频的示例
2021/01/29 Python
css3的transition效果和transfor效果示例介绍
2013/10/30 HTML / CSS
跑步、骑行和铁人三项的高性能眼镜和服装:ROKA
2018/07/06 全球购物
澳大利亚最大的护发和护肤品购物网站:RY
2019/12/26 全球购物
秦兵马俑教学反思
2014/02/07 职场文书
公司会计岗位职责
2014/02/13 职场文书
《哪吒闹海》教学反思
2014/02/28 职场文书
高中生学习计划书
2014/09/15 职场文书
学校实习推荐信
2015/03/27 职场文书
《秋天的怀念》教学反思
2016/02/17 职场文书
Go语言读取txt文档的操作方法
2022/01/22 Golang
Python实现双向链表
2022/05/25 Python