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

WBOY
リリース: 2016-05-16 18:16:53
オリジナル
1073 人が閲覧しました
复制代码 代码如下:

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'等,建议平时还是用
单引号,到不是说单引号一定就比双引号更好,更符合规范,但是一种习惯还是很重要的,不要在代码中即出现单引号又出现双引号的。
举个简单的例子:
复制代码 代码如下:





假如你想直接通过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方法访问要快些。
下面的文章会再对特殊属性的访问做介绍。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!