作家
登录

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

作者: 来源:www.28hudong.com 2013-03-30 01:12:22 阅读 我要评论

复制代码 代码如下: 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游戏之优化篇

1。善用DocumentFragment 之前有个打飞机的游戏。我是用如下方法添加子弹 复制代码 代码如下: for(var i=0;i<5;i++){ var bullet = new Bullet(); document.body.appendChild(bullet); } 问题就来了,我的目的是希>>>详细阅读


本文标题:需要做特殊处理的DOM元素属性的访问

地址:http://www.17bianji.com/kaifa2/JS/25472.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)