jQ 기초편--jQuery 대상과dom 대상의 차이와 상호 전환

1799 단어 jquerydom
jQuery 객체란?
바로 jQuery를 통해 DOM 대상을 포장한 후에 생기는 대상입니다.jQuery 대상은 jQuery만의 방법으로 jQuery의 방법을 사용할 수 있습니다.예를 들어 $("#test").html()는 ID가test인 요소 내의 html 코드를 얻는 것을 의미한다.그중에서 html()은 jQuery의 방법입니다.
이 코드는 DOM을 사용한 코드와 같습니다.
document.getElementById("id").innerHTML;

jQuery 대상은 DOM 대상을 포장한 후에 생긴 것이지만 jQuery는 DOM 대상의 어떤 방법도 사용할 수 없고 같은 도리의 DOM 대상도 jQuery의 방법을 사용할 수 없다.함부로 사용하면 잘못을 보고할 수 있다.예를 들어 $("#test").innerHTML、document.getElementById("id").html() 같은 문법은 모두 잘못된 것이다.
주의: #id를 선택부호로 얻은 것은 jQuery 대상과 document.getElementById("id") 얻은 DOM 대상이며 이 둘은 동등하지 않습니다.아래와 같이 말한 양자 간의 전환을 참고하시오.
jQuery 객체에서 DOM 객체로 전환
두 가지 변환 방식으로 jQuery 대상을 DOM 대상으로 변환합니다: [index]와.get(index);
(1) jQuery 대상은 데이터 대상으로 [index] 방법을 통해 해당하는 DOM 대상을 얻을 수 있다.예:
var $v =$("#v") ; //jQuery  

var v=$v[0]; //DOM  

alert(v.checked) //    checkbox     

(2) jQuery 자체 제공, 통과.get(index) 방법으로 해당하는 DOM 객체를 가져옵니다.예:
var $v=$("#v"); //jQuery  

var v=$v.get(0); //DOM  

alert(v.checked) //    checkbox     



DOM 객체에서 jQuery 객체로 전환
이미 DOM 대상이 된 경우 $() 로 DOM 대상을 포장하면 jQuery 대상을 얻을 수 있습니다.예:
var v=document.getElementById("v"); //DOM  

var $v=$(v); //jQuery  

변환하면 임의로 jQuery 방법을 사용할 수 있습니다.
총결산
예를 들면 다음과 같습니다.
$("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]

이것들은 모두dom 대상으로dom의 방법을 사용할 수 있지만 Jquery의 방법을 사용할 수 없습니다.
올바른 쓰기 방법은 다음과 같습니다.
$("#msg").html();
$("#msg")[0].innerHTML;
$("#msg").eq(0)[0].innerHTML;
$("#msg").get(0).innerHTML;

좋은 웹페이지 즐겨찾기