需要做特殊处理的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 相关文章推荐
javascript完美拖拽的实现方法
Sep 29 Javascript
基于jquery实现的自动补全功能
Mar 12 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
May 13 Javascript
JavaScript实现的多个图片广告交替显示效果代码
Sep 04 Javascript
JS组件Bootstrap Select2使用方法解析
May 30 Javascript
angular.js实现购物车功能
Oct 23 Javascript
Vue2.0结合webuploader实现文件分片上传功能
Mar 09 Javascript
JS 数组随机洗牌的实例代码
Sep 12 Javascript
微信小程序实现单选功能
Oct 30 Javascript
vscode下的vue文件格式化问题
Nov 28 Javascript
javascript 设计模式之享元模式原理与应用详解
Apr 08 Javascript
vue中如何自定义右键菜单详解
Dec 08 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版)
2006/10/09 PHP
php 上传功能实例代码
2010/04/13 PHP
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
2013/07/01 PHP
PHP设计模式之装饰者模式代码实例
2015/05/11 PHP
用ADODB.Stream转换
2007/01/22 Javascript
二行代码解决全部网页木马
2008/03/28 Javascript
js刷新框架子页面的七种方法代码
2008/11/20 Javascript
js 禁用浏览器的后退功能的简单方法
2008/12/10 Javascript
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
jQuery中removeAttr()方法用法实例
2015/01/05 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
JavaScript运算符小结
2015/06/03 Javascript
jQuery实现宽屏图片轮播实例教程
2015/11/24 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
2017/03/27 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
2017/04/19 Javascript
jQuery扩展_动力节点Java学院整理
2017/07/05 jQuery
深入解析Vue 组件命名那些事
2017/07/18 Javascript
angular $watch 一个变量的变化(实例讲解)
2017/08/02 Javascript
jQuery实现定时隐藏对话框的方法分析
2018/02/12 jQuery
React router动态加载组件之适配器模式的应用详解
2018/09/12 Javascript
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
2020/09/11 Javascript
Javascript文本框脚本实现方法解析
2020/10/30 Javascript
python fabric实现远程操作和部署示例
2014/03/25 Python
Python中使用hashlib模块处理算法的教程
2015/04/28 Python
python中函数传参详解
2016/07/03 Python
python中将字典形式的数据循环插入Excel
2018/01/16 Python
python读取图片并修改格式与大小的方法
2018/07/24 Python
Appium Python自动化测试之环境搭建的步骤
2019/01/23 Python
Jupyter Notebook打开任意文件夹操作
2020/04/14 Python
高分子材料与工程专业推荐信
2013/12/01 职场文书
小学生手册家长评语
2014/04/16 职场文书
《假如》教学反思
2014/04/17 职场文书
课外科技活动总结
2014/08/27 职场文书
通知函的格式
2015/04/27 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
python 如何将两个实数矩阵合并为一个复数矩阵
2021/05/19 Python