2017-09-06 1 views
1

왜 JS와 jQuery에서 동일한 변수를 사용할 수 없습니까?JS와 jQuery에서 동일한 변수를 사용할 수없는 이유는 무엇입니까?

var elHTML = '<div></div>'; 
var el = document.getElementById('elementFirst'); //js code 
el.innerHTML = elHTML; //js code 
//it works! 

나는이 같은 일부 코드를 변경하면 ..

var elHTML = '<div></div>'; 
var el = $('#elementFirst'); //jQuery code 
el.innerHTML = elHTML; //js code 
//not work! 

또는이

var elHTML = '<div></div>'; 
var el = document.getElementById('elementFirst'); //js code 
el.html(elHTML); //jQuery code 
//not work! 

아무것도 마지막 두 코드에 #elementFirst으로 일어나지

감사 : 예를 들어 사전에 대답하기 위해

+2

당신은 document.getElementById를()가 HTML 반환을 혼합 할 수 없습니다 자바 스크립트 갔지 (0) 일반 바닐라에 jQuery를 떨어져 전환하는 데 사용 요소와 $()는 jQuery 객체를 반환합니다. 거기에 구조와 관련된 방법이 다릅니다. – Lalit

답변

4

$()은 이 아니지만 은 jQuery object으로 표시됩니다. jQuery의 함수는 jQuery objects과 만 사용할 수 있습니다.

두 번째 경우에는 innerHTML 속성을 사용합니다.이 속성은 jQuery 개체에 없습니다.

제 3의 경우에는 함수를 사용합니다.이 함수는 jQuery 함수이지만 HTMLElement과 함께 사용했습니다.

예제를 참조하십시오.

당신은 innerHTML 속성이 DOM elementjQuery objecthtml 기능에 존재하지 않는 것을 볼 수 있습니다.

0
var elHTML = '<div>Hello</div>'; 
var el = $('#elementFirst'); //jQuery code 
el.get(0).innerHTML = elHTML; 

var jEl = $('#elementFirst'); 
 
console.log('innerHTML' in jEl); 
 

 
var domEl = document.getElementById('elementFirst'); 
 
console.log('html' in domEl);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id='elementFirst'></div>
은 기본적으로 당신은

관련 문제