DOM 대상 속성 설정 및 가 져 오기

DOM 대상 의 속성 을 수정 할 수 있 는 두 가지 방법 이 있 습 니 다.
"." 연산 자 와 getAttribute (setAttribute) 방법.
차 이 는 다음 과 같다.

<div id='test' class="cls" dir="ltr" title="wott" ss="ss"></div>

var e = document.getElementById('test');
//    
//  .    ,      (IE          ),       ,     。
alert(e.id);//'test'
alert(e.className);//'cls'
alert(e.ss);//undefined(IE   'ss');

// getAttribute    ,         ,      。
alert(e.getAttribute('id'));//'test'
alert(e.getAttribute('ID'));//'test'
//       
alert(e.getAttribute('class'));//'cls'(Firefox)
alert(e.getAttribute('className'));//'cls'(IE)

alert(e.getAttribute('ss'));//'ss'

//    
/*   .      setAttribute   。         ,  .             getAttribute  ,    。*/
e.setAttribute('abc2','abc2');
e.abc3 = 'abc3';

e.title1 = 'abc';
alert(e.getAttribute('title1'));//null

style, className 의 설정 은 보통. 연산 자 를 사용 합 니 다.

    el.style.backgroundColor = 'blue';
    el.className = 'nav';//works in all browers.

HTML Element 는 Element (Node 에서 계승) 에서 계승 되 기 때문에 attributes 대상 이 있 으 며 속성 에 대한 접근 은 이 를 통 해 할 수 있 습 니 다.attributes 대상 은 NamedNodeMap 구 조 를 사용 하여 데 이 터 를 저장 합 니 다. NamedNodeMap 자체 도 '살 아 있 는' 대상 입 니 다. NamedNodeMap 대상 은 Attr 노드 대상 (nodeType = 2) 으로 구성 되 어 있 습 니 다.그것 은 다음 과 같은 방법 이 있다.
getNamedItem (name) - 이름 이 name 인 Attr 대상 을 되 돌려 줍 니 다.
removeNamedItem (name) - name 이라는 Attr 대상 을 삭제 합 니 다.
setNamedItem (node) - Attr 대상 을 추가 합 니 다.
item (pos) - pos 의 Attr 대상 을 가 져 옵 니 다.

//  :
<div id="xx"><p>xxxwww</p></div>
var attr = el.attributes;
alert(el.attributes.getNamedItem('id').nodeValue)//xx
//     []    
alert(el.attributes['id'].nodeValue)//xx
//  ID    xx2
attr['id'].nodeValue = 'xx2';
//  ID  
attr.removeNamedItem('id');
//        
attr.item(0).nodeValue;

attributes 대상 을 통 해 속성 을 읽 고 쓰 는 것 은 비교적 적 지만 속성 을 옮 겨 다 니 는 데 편리 합 니 다.구체 적 으로 다른 문장 을 보다.http://mutongwu.iteye.com/admin/blogs/688017

좋은 웹페이지 즐겨찾기