>  기사  >  웹 프론트엔드  >  JavaScript와 JQuery 공통 메소드의 차이점에 대한 자세한 설명과 예제

JavaScript와 JQuery 공통 메소드의 차이점에 대한 자세한 설명과 예제

伊谢尔伦
伊谢尔伦원래의
2017-06-19 11:39:571165검색

jquery는 javascript용 확장 라이브러리이자 캡슐화 라이브러리로, 이를 통해 javascript를 더 쉽고 간단하게 사용할 수 있습니다. jQuery는 더 적은 코드를 사용하고 더 많은 기능을 아름답게 완성하는 것입니다.

JavaScript와 JQuery에서 일반적으로 사용되는 메소드의 비교 예는 다음과 같습니다.

1. DOM 로드의 차이점
JavaScript:
window.onload

function first(){ 
alert('first'); 
} 
function second(){ 
alert('second'); 
} 
window.onload = first; 
window.onload = second;

//두 번째 window.onload만 실행됩니다. 다음 방법으로 개선할 수 있습니다:

window.onload = function(){ 
first(); 
second(); 
}

Jquery:
$(document).ready()

$(document).ready(){ 
function first(){ 
alert('first'); 
} 
function second(){ 
alert('second'); 
} 
$(document).ready(function(){ 
first(); 
} 
$(document).ready(function(){ 
second(); 
} 
//两条均会执行 
}

2. ID 가져오기
JavaScript:
document.getElementById('idName')

JQuery:
$( '#idName')

3 , 클래스 가져오기
JavaScript:
JavaScript에는 클래스를 가져오는 기본 방법이 없습니다.

JQuery:
$('.className')

4 ​​TagName 가져오기
JavaScript:
document.getElementsByTagName ('tagName')

JQuery:
$('tagName')

5. 객체를 생성하고 문서에 추가합니다.
JavaScript:

var para = document.createElement('p'); 
//创建一个p元素 
document.body.appendElement(para); 
//将p元素追加为body的lastchild子节点,如果想将新创建的p元素插入到已存在的某个元素之前,可以使用insertBefore()方法

JQuery:
JQuery는 이전에 새 요소를 삽입하는 4가지 방법을 제공합니다. 또는 기존 요소 뒤(내부적으로) 메서드:append(),appendTo(),prepend(),prependTo().
형식: $(html);
예: html 코드:

<p>World!</p> 
$(&#39;p&#39;).append(&#39;<b>Hello!</b>&#39;); 
//输出:<p>World!<b>Hello!</b></p> 
$(&#39;<b>Hello!</b>&#39;).appendTo(&#39;p&#39;); //输出:同上 
$(&#39;p&#39;).prepend(&#39;<b>Hello!</b>&#39;); 
//输出:<p><b>Hello!</b>World! </p> 
$(&#39;<b>Hello!</b>&#39;).prependTo(&#39;p&#39;); 
//输出:同上

6. 새 요소 삽입
JavaScript:
insertBefore() 구문 형식:
parentElement.insertBefore(newElement,targetElement)
예: img 요소 삽입 단락 앞.

html 코드:

<img src="image.jpg" id="imgs" /> 
<p>这是一段文字</p>

JavaScript 코드:

var imgs = document.getElementById(&#39;imgs&#39;); 
var para = document.getElementsByTag(&#39;p&#39;); 
para.parenetNode.insertBefore(imgs,para);

JQuery:
JQuery는 기존 요소 앞이나 뒤에 새 요소를 삽입하기 위한 4가지 메서드(외부)를 제공합니다: after(), insertAfter(), before(), insertBefore( ).
형식: $(html);
예: html 코드:
e388a4556c0f65e1904146cc1a846beeWorld!94b3e26ee717c64999d7867364b1b4a3

JQuery 코드

$(&#39;p&#39;).after(&#39;<b>Hello!</b>&#39;); 
//输出:<p>World! </p><b>Hello!</b> 
$(&#39;<b>Hello!</b>&#39;). insertAfter (&#39;p&#39;); 
//输出:同上 
$(&#39;p&#39;).before(&#39;<b>Hello!</b>&#39;); 
//输出:<b>Hello!</b><p>World! </p> 
$(&#39;<b>Hello!</b>&#39;).insertBefore(&#39;p&#39;); 
//输出:同上

7. 노드 복사:
reference = node.cloneNode(deep)
이 메서드에는 부울 매개변수가 하나만 있으며 가능한 값은 true 또는 false만 가능합니다. 이 매개변수는 복사된 노드의 하위 노드도 새 노드에 복사할지 여부를 결정합니다.

JQuery:
clone() //노드를 복사한 후 복사된 새 요소에는 아무런 동작이 없습니다.
clone(true) //노드 내용과 바인딩된 이벤트를 복사합니다.
참고: 이 메서드는 일반적으로 AppendTo(와 함께 사용됩니다. ) , prependTo() 및 기타 메소드가 조합되어 사용됩니다.

8. 노드 삭제
JavaScript:
reference = element.removeChild(node)
removeChild() 메서드는 지정된 요소에서 하위 노드를 삭제합니다.

JQuery:
remove()
remove() 메서드는 하위 노드를 제거합니다. 지정된 요소의 노드 DOM에서 일치하는 모든 요소를 ​​제거합니다. Remove() 메소드는 다른 필터 선택기와 함께 사용할 수도 있으며 이는 매우 편리합니다.
예: 제목이 "Hello"가 아닌 ul li 아래의 li를 제거합니다.
$('ul li').remove(li[title!='Hello'])
empty() 메소드 기능은 노드를 지우는 것입니다.

9. 패키지 노드
JavaScript:
아직 JavaScript가 없습니다.

JQuery:

wrap() //将匹配元素用其他元素的结构化标记单独包裹起来 
wrapAll() //将所有匹配的元素用一个元素包裹起来 
wrapInner() //将匹配元素的子内容用其他结构化的标记包裹起来

10.

속성 작업

: 속성 노드 설정, 속성 노드 검색 JavaScript: document.getElementsByTagName('tagName')

제이쿼리 :
JQuery에서 속성 노드의 설정과 검색은 모두 attr()입니다.

$(&#39;p&#39;).attr(&#39;title&#39;); //获取p元素的title属性; 
$(&#39;p&#39;).attr(&#39;title&#39;,&#39;My title&#39;); //设置p元素的title属性 
$(&#39;p&#39;).attr(&#39;title&#39;:&#39;My title&#39;,&#39;class&#39;:&#39;myClass&#39;); //当需要添加多个属性时,可以用"名:值"对的形式,中间用逗号隔开。

11、替换节点 
JavaScript: 
reference = element.replaceChild(newChild,oldChild) 
该方法是将一个给定父元素里的一个子节点替换为另外一个节点。 

JQuery: 
replaceWith()、replaceAll() 
eg: 
e388a4556c0f65e1904146cc1a846beehello94b3e26ee717c64999d7867364b1b4a3 
想替换为: 
c1a436a314ed609750bd7c7d319db4daHi2e9b454fa8428549ca2e64dfac4625cd 

JQuery代码: 
$('p') .replaceWith('c1a436a314ed609750bd7c7d319db4daHi2e9b454fa8428549ca2e64dfac4625cd'); 
或者可以写成: 
$('c1a436a314ed609750bd7c7d319db4daHi2e9b454fa8428549ca2e64dfac4625cd').replaceAll('p'); 

12、CSS-DOM操作 
JavaScript: 
格式:element.style.property 
CSS-DOM能够读取和设置style对象的属性,其不足之处是无法通过它来提取外部CSS设置的样式信息,而JQuery的.css()方法是可以的。 
注意点:CSS中的如"font-size"这样有"-"的,要使用首字母小写的驼峰式表示,如fontSize。 

JQuery: 
格式:$(selector).css() 
css()方法获取元素的样式属性 
此外,JQuery还提供了height()和width()分别用来获取元素的高度和宽度(均不带单位),而css(height)、css(width)返回高宽,且带单位。

위 내용은 JavaScript와 JQuery 공통 메소드의 차이점에 대한 자세한 설명과 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.