javascript 三种方法实现获得和设置以及移除元素属性


Posted in Javascript onMarch 20, 2013

以下面的html为例

<div id="myDiv" class="bd" title="我是div"> 
<img id="img1" /> 
<a id="myA" href = "http://www.baidu.com">百度</a> 
</div>

1.通过HTMLElement类型(对象)的属性获得和设置元素特性
var div = document.getElementById("myDiv"); 
var img = document.getElementById("img1"); 
var a = document.getElementById("myA"); 
//取得元素特性 
alert(div.id); //"myDiv" 
alert(div.className); //"bd",这里不是div.class,是因为class是保留关键字 
alert(div.title); //"我是div" 
alert(a.href); //http://www.baidu.com 
//设置元素特性 
div.id = "myDiv2"; //id改为"myDiv2" 
div.className = "ft"; //class改为"ft",如果存在名为"ft"的样式,会立刻变为"ft"样式,浏览器会立刻反应出来 
div.title = "我是myDiv2"; //title改为"我是myDiv2" 
div.align = "center"; //设置居中对齐 
img.src ="images/img1.gif"; //设置图片路径 
a.innerHTML ="新浪"; //"百度"改为"新浪" 
a.href = "http://www.sina.com.cn"; //重新设置超链接

2.通过getAttribute()、setAttribute()和removeAttribute() 方法,获取、设置、移除元素的特性(不推荐使用,前两个方法IE6,7中有异常,第三个方法IE6不支持,设置自定义特性时可以使用)
getAttribute() 方法,用来获取元素特性。接受一个参数,即要获得元素的特性名
setAttribute() 方法,用来设置元素特性。接受两个参数,即要获得元素的特性名和特性值
removeAttribute() 方法,用来移除元素的特性。接受一个参数,即要移除元素的特性名
var div = document.getElementById("myDiv"); 
var img = document.getElementById("img1"); 
var a = document.getElementById("myA"); 
//取得元素特性 
alert(div.getAttribute("id")); //"myDiv" 
alert(div.getAttribute("class")); //"bd",注意这里是class,而不是className,与上面不同 
alert(div.getAttribute("title")); //"我是div" 
alert(a.getAttribute("href")); //http://www.baidu.com 
//设置元素特性 
div.setAttribute("id","myDiv2"); //id改为"myDiv2" 
div.setAttribute("class","ft"); //class改为"ft",这里同样是class,而不是className 
div.setAttribute("title","我是myDiv2"); //title改为"我是myDiv2" 
div.setAttribute("align","center"); //设置居中对齐 
img.setAttribute("src","images/img1.gif"); //设置图片路径 
//移除元素特性 
div.removeAttribute("class"); //移除class特性

3.通过attributes属性,获取、设置、移除元素的特性
var div = document.getElementById("myDiv"); 
//取得元素特性 
alert(div.attributes["id"].nodeValue); //"myDiv" 
//设置元素特性 
div.attributes["id"].nodeValue = "myDiv2"; //id改为"myDiv2" 
//移除元素特性 
div.attributes.removeNamedItem("class"); //移除class特性
Javascript 相关文章推荐
用JavaScript计算在UTF-8下存储字符串占用字节数
Aug 08 Javascript
jQuery中[attribute*=value]选择器用法实例
Dec 31 Javascript
以jQuery中$.Deferred对象为例讲解promise对象是如何处理异步问题
Nov 13 Javascript
详解JavaScript逻辑And运算符
Dec 04 Javascript
JS动态给对象添加属性和值的实现方法
Oct 21 Javascript
详解jquery easyui之datagrid使用参考
Dec 05 Javascript
基于JS实现bookstore静态页面的实例代码
Feb 22 Javascript
js禁止浏览器的回退事件
Apr 20 Javascript
layui中layer前端组件实现图片显示功能的方法分析
Oct 13 Javascript
微信小程序云开发详细教程
May 16 Javascript
vue-dplayer 视频播放器实例代码
Nov 08 Javascript
javascript实现前端成语点击验证优化
Jun 24 Javascript
asp.net中System.Timers.Timer的使用方法
Mar 20 #Javascript
js控制的回到页面顶端goTop的代码实现
Mar 20 #Javascript
让图片旋转任意角度及JQuery插件使用介绍
Mar 20 #Javascript
jquery在Chrome下获取图片的长宽问题解决
Mar 20 #Javascript
javascript中[]和{}对象使用介绍
Mar 20 #Javascript
javascript中节点的最近的相关节点访问方法
Mar 20 #Javascript
javascript中注册和移除事件的4种方式
Mar 20 #Javascript
You might like
php分页函数示例代码分享
2014/02/24 PHP
PHP实现的简单日历类
2014/11/29 PHP
PHP跨平台获取服务器IP地址自定义函数分享
2014/12/29 PHP
php生成图片验证码
2015/06/09 PHP
PHP实现全角字符转为半角方法汇总
2015/07/09 PHP
php PDO实现的事务回滚示例
2017/03/23 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
Google韩国首页图标动画效果
2007/08/26 Javascript
javascript循环变量注册dom事件 之强大的闭包
2010/09/08 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
javascript实现起伏的水波背景效果
2016/05/16 Javascript
Vue.js组件tree实现无限级树形菜单
2016/12/02 Javascript
JavaScript实现带有子菜单和控件的slider轮播图效果
2017/11/01 Javascript
微信小程序switch组件使用详解
2018/01/31 Javascript
vue 强制组件重新渲染(重置)的两种方案
2019/10/29 Javascript
[02:29]完美世界高校联赛上海赛区回顾
2015/12/15 DOTA
Python Tkinter简单布局实例教程
2014/09/03 Python
利用python程序帮大家清理windows垃圾
2017/01/15 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
python爬虫之自制英汉字典
2019/06/24 Python
快速解决vue.js 模板和jinja 模板冲突的问题
2019/07/26 Python
python 消费 kafka 数据教程
2019/12/21 Python
python列表的逆序遍历实现
2020/04/20 Python
python 实现任务管理清单案例
2020/04/25 Python
python爬虫数据保存到mongoDB的实例方法
2020/07/28 Python
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
使用django自带的user做外键的方法
2020/11/30 Python
美国标志性加大尺码时装品牌:Ashley Stewart
2016/12/15 全球购物
JSF界面控制层技术
2013/06/17 面试题
店长岗位职责
2015/02/11 职场文书
公司员工离职感言
2015/08/03 职场文书
python 通过使用Yolact训练数据集
2021/04/06 Python
如何用Python搭建gRPC服务
2021/06/30 Python