需要做特殊处理的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 相关文章推荐
表单的一些基本用法与技巧
Jul 15 Javascript
javascript学习笔记(五)正则表达式
Apr 08 Javascript
jQuery EasyUI API 中文文档 - ValidateBox验证框
Oct 06 Javascript
jquery 操作DOM案例代码分享
Apr 05 Javascript
JavaScript中的稀疏数组与密集数组[译]
Sep 17 Javascript
JS验证控制输入中英文字节长度(input、textarea等)具体实例
Jun 21 Javascript
Function.prototype.call.apply结合用法分析示例
Jul 03 Javascript
seajs中模块的解析规则详解和模块使用总结
Mar 12 Javascript
在easyUI开发中,出现jquery.easyui.min.js函数库问题的解决办法
Sep 11 Javascript
Bootstrap按钮下拉菜单组件详解
May 10 Javascript
微信打开网址添加在浏览器中打开提示的办法
May 20 Javascript
Vue使用screenfull实现全屏效果
Sep 17 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
Syphon 使用方法
2021/03/03 冲泡冲煮
推荐Discuz!5的PHP代码高亮显示与实现可运行代码
2007/03/15 PHP
ecshop 订单确认中显示省市地址信息的方法
2010/03/15 PHP
PHP输出当前进程所有变量/常量/模块/函数/类的示例
2013/11/07 PHP
使用array_map简单搞定PHP删除文件、删除目录
2014/10/29 PHP
php实现按照权重随机排序数据的方法
2015/01/09 PHP
javascript实现的像java、c#之类的sleep暂停的函数代码
2010/03/04 Javascript
在UpdatePanel内jquery easyui效果失效的解决方法
2010/04/11 Javascript
Enter转换为Tab的小例子(兼容IE,Firefox)
2013/11/14 Javascript
ext combobox动态加载数据库数据(附前后台)
2014/06/17 Javascript
Angular中$cacheFactory的作用和用法实例详解
2016/08/19 Javascript
JavaScript实现垂直滚动条效果
2017/01/18 Javascript
js实现textarea限制输入字数
2017/02/13 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
2017/11/18 Javascript
jQuery实现判断上传图片类型和大小的方法示例
2018/04/11 jQuery
JavaScript累加、迭代、穷举、递归等常用算法实例小结
2018/05/08 Javascript
详解angular2 控制视图的封装模式
2018/12/27 Javascript
javascript中如何判断类型汇总
2019/05/14 Javascript
JS回调函数 callback的理解与使用案例分析
2019/09/09 Javascript
使用uni-app开发微信小程序的实现
2019/12/13 Javascript
javascript实现贪吃蛇经典游戏
2020/04/10 Javascript
python练习程序批量修改文件名
2014/01/16 Python
实例讲解Python编程中@property装饰器的用法
2016/06/20 Python
windows下python安装小白入门教程
2018/09/18 Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
2018/11/10 Python
Python基础学习之时间转换函数用法详解
2019/06/18 Python
Python类如何定义私有变量
2020/02/03 Python
CSS3 实现侧边栏展开收起动画
2014/12/22 HTML / CSS
html5写一个BUI折叠菜单插件的实现方法
2019/09/11 HTML / CSS
探亲邀请信范文
2014/01/30 职场文书
幼儿园元旦亲子活动方案
2014/02/17 职场文书
营销总监岗位职责范本
2014/02/26 职场文书
2014年平安夜寄语
2014/12/08 职场文书
组织生活会发言材料
2014/12/15 职场文书
三八妇女节主持词
2015/07/04 职场文书
关于React Native 无法链接模拟器的问题
2021/06/21 Javascript