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 相关文章推荐
js getBoundingClientRect() 来获取页面元素的位置
Nov 25 Javascript
ext前台接收action传过来的json数据示例
Jun 17 Javascript
函数window.open实现关闭所有的子窗口
Aug 03 Javascript
jquery实现图片放大镜功能
Nov 23 Javascript
超级简易的JS计算器实例讲解(实现加减乘除)
Aug 08 Javascript
node中使用es5/6以及支持性与性能对比
Aug 11 Javascript
Node.JS更改Windows注册表Regedit的方法小结
Aug 18 Javascript
js数组常用最重要的方法
Feb 04 Javascript
关于AngularJS中几种Providers的区别总结
May 17 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
Sep 11 Javascript
解决vscode进行vue格式化,会自动补分号和双引号的问题
Oct 26 Javascript
js动态生成表格(节点操作)
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
桌面中心(一)创建数据库
2006/10/09 PHP
解析csv数据导入mysql的方法
2013/07/01 PHP
简单的php文件上传(实例)
2013/10/27 PHP
PHP读取CURL模拟登录时生成Cookie文件的方法
2014/11/04 PHP
php插入排序法实现数组排序实例
2015/02/16 PHP
php计算title标题相似比的方法
2015/07/29 PHP
Centos6.5和Centos7 php环境搭建方法
2016/05/27 PHP
Ajax实现对静态页面的文章访问统计功能示例
2016/10/10 PHP
php动态读取数据清除最右边距的方法
2017/04/12 PHP
php表单处理操作
2017/11/16 PHP
window.parent调用父框架时 ie跟火狐不兼容问题
2009/07/30 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
js判断是否按下了Shift键的方法
2015/01/27 Javascript
javascript获取元素离文档各边距离的方法
2015/02/13 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
jQuery实现动态添加、删除按钮及input输入框的方法
2017/04/27 jQuery
详解vue移动端日期选择组件
2018/02/22 Javascript
微信小程序实现消息框弹出动画
2020/04/18 Javascript
小程序使用wxs解决wxml保留2位小数问题
2019/12/13 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
基于jsbarcode 生成条形码并将生成的条码保存至本地+源码
2020/04/27 Javascript
小程序实现左滑删除的效果的实例代码
2020/10/19 Javascript
python实现井字棋游戏
2020/03/30 Python
Python3实现抓取javascript动态生成的html网页功能示例
2017/08/22 Python
对python 各种删除文件失败的处理方式分享
2018/04/24 Python
用python代码将tiff图片存储到jpg的方法
2018/12/04 Python
Python图像滤波处理操作示例【基于ImageFilter类】
2019/01/03 Python
Python实现自定义读写分离代码实例
2019/11/16 Python
pytorch 常用函数 max ,eq说明
2020/06/28 Python
pycharm全局搜索的具体步骤
2020/07/28 Python
微信浏览器左上角返回按钮拦截功能
2017/11/21 HTML / CSS
土木工程专业大学毕业生求职信
2013/10/13 职场文书
庆祝教师节活动方案
2014/01/31 职场文书
2015年幼儿园班务工作总结
2015/05/12 职场文书
Python基础之元组与文件知识总结
2021/05/19 Python