需要做特殊处理的DOM元素属性的访问


Posted in Javascript onNovember 05, 2010
var props = { 
'for' : 'htmlFor', 

'class': 'className', 

readonly: 'readOnly', 

maxlength: 'maxLength', 

cellspacing: 'cellSpacing', 

rowspan: 'rowSpan', 

colspan: 'colSpan', 

tabindex: 'tabIndex', 

usemap: 'useMap', 

frameborder: 'frameBorder' 
}

说点题外话,用json格式来创建对象的话,建议属性不需要单引号或者双引号,除非一些ecmascript的关键词,比如上面的'for','class'等,建议平时还是用
单引号,到不是说单引号一定就比双引号更好,更符合规范,但是一种习惯还是很重要的,不要在代码中即出现单引号又出现双引号的。
举个简单的例子:
<label for="username" id="test">name:</label><BR><input type="text" id="username" name="username"/><BR>

假如你想直接通过elem.propertyName这样的访问方式来得到某个DOM元素的某个属性值,对于上面的属性访问你就必须做个简单的变化,

例如上面的这个例子,你想得到label的for属性值。

var ele = document.getElementById('test'); 
var val = ele.htmlFor; 
//或者 
val = ele['htmlFor']; 
//通过标准的DOM方法访问的话,就不需要做特殊处理了 
val = ele.getAttribute('for'); 
val = ele.getAttributeNode('for').value;

同样对于class,readonly等的访问,上面的几种访问方式也一样适合。

个人觉得直接通过属性访问或许会比通过DOM方法访问要快些。
下面的文章会再对特殊属性的访问做介绍。

Javascript 相关文章推荐
围观tangram js库
Dec 28 Javascript
电子商务网站上的常用的js放大镜效果
Dec 08 Javascript
javascript获取选中的文本的方法代码
Oct 30 Javascript
文本框只能选择数据到文本框禁止手动输入
Nov 22 Javascript
同步文本框内容JS代码实现
Aug 04 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
Apr 17 Javascript
设置cookie指定时间失效(实例代码)
May 28 Javascript
jQuery修改DOM结构_动力节点Java学院整理
Jul 05 jQuery
简单的三步vuex入门
May 20 Javascript
通过jquery的ajax请求本地的json文件方法
Aug 08 jQuery
浅谈vue生命周期共有几个阶段?分别是什么?
Aug 07 Javascript
vue 基于abstract 路由模式 实现页面内嵌的示例代码
Dec 14 Vue.js
基于jQuery的仿flash的广告轮播
Nov 05 #Javascript
jquery实现文本框鼠标右击无效以及不能输入的代码
Nov 05 #Javascript
基于jquery的loading效果实现代码
Nov 05 #Javascript
解决jQuery插件tipswindown与hintbox冲突
Nov 05 #Javascript
Jquery数独游戏解析(一)-页面布局
Nov 05 #Javascript
TinyMCE 新增本地图片上传功能
Nov 05 #Javascript
jQuery示例收集
Nov 05 #Javascript
You might like
PHP学习 变量使用总结
2011/03/24 PHP
php empty() 检查一个变量是否为空
2011/11/10 PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
2015/07/01 PHP
php实现socket推送技术的示例
2017/12/20 PHP
CI框架网页缓存简单用法分析
2018/12/26 PHP
浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法
2019/10/12 PHP
jquery应该如何来设置改变按钮input的onclick事件
2012/12/10 Javascript
JavaScript中几个重要的属性(this、constructor、prototype)介绍
2013/05/19 Javascript
js+css实现tab菜单切换效果的方法
2015/01/20 Javascript
微信小程序 数据封装,参数传值等经验分享
2017/01/09 Javascript
在vue中获取微信支付code及code被占用问题的解决方法
2019/04/16 Javascript
详解微信小程序用定时器实现倒计时效果
2019/04/30 Javascript
用vscode开发vue应用的方法步骤
2019/05/06 Javascript
laravel实现中文和英语互相切换的例子
2019/09/30 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
JavaScript ES6 Class类实现原理详解
2020/05/08 Javascript
Javascript call及apply应用场景及实例
2020/08/26 Javascript
[31:29]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第一场 12.20
2020/12/23 DOTA
python 回调函数和回调方法的实现分析
2016/03/23 Python
Python实现的爬虫功能代码
2017/06/24 Python
Python中工作日类库Busines Holiday的介绍与使用
2017/07/06 Python
Python编程实现正则删除命令功能
2017/08/30 Python
Python实现将Excel转换成为image的方法
2018/10/23 Python
python简易实现任意位数的水仙花实例
2018/11/13 Python
Django Form and ModelForm的区别与使用
2019/12/06 Python
Python MySQL 日期时间格式化作为参数的操作
2020/03/02 Python
Python爬取12306车次信息代码详解
2020/08/12 Python
Python APScheduler执行使用方法详解
2020/12/10 Python
光声世纪笔试题目
2012/08/25 面试题
和平主题的演讲稿
2014/01/12 职场文书
禁烟标语大全
2014/06/11 职场文书
超市创业计划书
2014/09/15 职场文书
刑事附带民事代理词
2015/05/25 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
改造DE1103三步曲
2022/04/07 无线电
MySQL 外连接语法之 OUTER JOIN
2022/04/09 MySQL