需要做特殊处理的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 相关文章推荐
js下通过prototype扩展实现indexOf的代码
Dec 08 Javascript
js获得指定控件输入光标的坐标兼容IE,Chrome,火狐等多种主流浏览器
May 21 Javascript
jQuery实现简单的日期输入格式化控件
Mar 12 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
Apr 28 Javascript
AngularJS实现表单验证功能
Jan 09 Javascript
JS中使用gulp实现压缩文件及浏览器热加载功能
Jul 12 Javascript
10分钟彻底搞懂Http的强制缓存和协商缓存(小结)
Aug 30 Javascript
JS实现li标签的删除
Apr 12 Javascript
基于javascript的拖拽类封装详解
Apr 19 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
Sep 18 Javascript
vue实现二级导航栏效果
Oct 19 Javascript
微信小程序国际化探索实现(附源码地址)
May 20 Javascript
基于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 接口类与抽象类的实际作用
2009/11/26 PHP
PHP中用正则表达式清除字符串的空白
2011/01/17 PHP
解析php取整的几种方式
2013/06/25 PHP
解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法
2015/10/23 PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
2016/10/29 PHP
读jQuery之七 判断点击了鼠标哪个键的代码
2011/06/21 Javascript
js捕获鼠标右键菜单中的粘帖事件实现代码
2013/04/01 Javascript
不使用jquery实现js打字效果示例分享
2014/01/19 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
JS获取html元素的标记名实现方法
2016/10/08 Javascript
jquery实现拖动效果(代码分享)
2017/01/25 Javascript
vue父组件中获取子组件中的数据(实例讲解)
2017/09/27 Javascript
jquery使用FormData实现异步上传文件
2018/10/25 jQuery
详解微信小程序之一键复制到剪切板
2019/04/24 Javascript
解决vue单页面应用中动态修改title问题
2019/06/09 Javascript
BootstrapValidator验证用户名已存在(ajax)
2019/11/08 Javascript
React中获取数据的3种方法及优缺点
2020/02/18 Javascript
vue实现图片按比例缩放问题操作
2020/08/11 Javascript
[01:01:18]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#2COL VS LGD
2016/03/03 DOTA
python输出指定月份日历的方法
2015/04/23 Python
django使用图片延时加载引起后台404错误
2017/04/18 Python
基于python的字节编译详解
2017/09/20 Python
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
关于Python正则表达式 findall函数问题详解
2018/03/22 Python
python爬虫之自制英汉字典
2019/06/24 Python
Numpy中对向量、矩阵的使用详解
2019/10/29 Python
Python实现投影法分割图像示例(二)
2020/01/17 Python
django教程如何自学
2020/07/31 Python
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
娇韵诗俄罗斯官方网站:Clarins俄罗斯
2020/10/03 全球购物
英语专业自荐书
2014/06/13 职场文书
2015年生产车间工作总结
2015/04/22 职场文书
故意杀人案辩护词
2015/05/21 职场文书
MySQL修改默认引擎和字符集详情
2021/09/25 MySQL
关于MySQL中explain工具的使用
2023/05/08 MySQL