>  기사  >  웹 프론트엔드  >  jQuery 객체와 DOM object_jquery 간의 변환 방법

jQuery 객체와 DOM object_jquery 간의 변환 방법

WBOY
WBOY원래의
2016-05-16 18:29:22706검색
jQuery 객체란 무엇인가요?
---jQuery를 통해 DOM 객체를 Wrapping하여 생성한 객체입니다. 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는 다르지만 서로 관련되어 있으므로 jQuery 객체와 DOM 객체도 서로 변환될 수 있습니다. 두 가지를 변환하기 전에 먼저 규칙을 만듭니다. jQuery 객체를 얻은 경우 다음과 같이 변수 앞에 $를 추가합니다. var $variab = jQuery 객체를 얻은 경우 다음과 같습니다. : var variab = DOM object; 이 규칙은 설명과 구별의 편의를 위한 것일 뿐 실제 사용에서는 규정되지 않습니다.


jQuery 객체를 DOM 객체로 변환:
두 가지 변환 방법은 jQuery 객체를 DOM 객체로 변환합니다: [index] 및 .get(index)
(1 )jQuery object는 데이터 객체이며, 해당 DOM 객체는 [index] 메소드를 통해 얻을 수 있습니다.
예: var $v =$("#v"); //jQuery 객체
var v=$v[0] //DOM 객체
alert(v.checked) //감지 this 확인란 선택 여부
(2) jQuery 자체는 .get(index) 메서드를 통해 다음과 같이 해당 DOM 개체
를 얻습니다. var $v=$("#v"); //jQuery 객체
var v=$v.get(0); //DOM 객체
alert(v.checked) //이 확인란이 선택되었는지 감지


DOM 객체 jQuery 객체로 변환: DOM 객체의 경우 DOM 객체를 $()로 래핑하기만 하면 jQuery 객체를 얻을 수 있습니다. $(DOM object)
예: var v=document.getElementById("v"); //DOM object
var $v=$(v) //jQuery object
변환 가능 jQuery의 메소드를 자유롭게 사용할 수 있습니다.
위의 방법을 통해 jQuery 객체와 DOM 객체를 임의로 서로 변환할 수 있습니다. 다시 한 번 강조할 점은 DOM 객체만이 DOM에서 메소드를 사용할 수 있고, jQuery 객체는 DOM에서 메소드를 사용할 수 없다는 점입니다.

기타 관련 사용법은 다음과 같습니다.

1. DOM 객체를 jQuery 객체로 변환 일반적으로 $()를 통해 일반 Dom 객체를 jQuery 객체로 변환할 수 있습니다.

예: $(document.getElementById("msg"))
반환되는 것은 jQuery 객체이며, jQuery 메소드를 사용할 수 있습니다.


2. jQuery 객체를 DOM 객체로 변환 jQuery 객체 자체가 컬렉션이기 때문입니다. 따라서 jQuery 객체를 Dom 객체로 변환하려면 항목 중 하나를 가져와야 하며 일반적으로 인덱스를 통해 검색할 수 있습니다.
예: $("#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;
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.