原生JS与jQuery操作DOM对比

一、创建元素节点

1.1 原生JS创建元素节点

document.createElement("p");

1.2 jQuery创建元素节点

$(‘<p></p>‘);`

二、创建并添加文本节点

2.1 原生JS创建文本节点

document.createTextNode("Text Content");

通常创建文本节点和创建元素节点配合使用,比如:

var textEl = document.createTextNode("Hello World.");
var pEl = document.createElement("p");
pEl.appendChild(textEl);

2.2 jQuery创建并添加文本节点:

var $p = $(‘<p>Hello World.</p>‘);

三、复制节点

3.1 原生JS复制节点:

var newEl = pEl.cloneNode(true);  `

3.2 jQuery复制节点

$newEl = $(‘#pEl‘).clone(true);

四、 插入节点

4.1 原生JS向子节点列表的末尾添加新的子节点

El.appendChild(newNode);

原生JS在节点的已有子节点之前插入一个新的子节点:

El.insertBefore(newNode, targetNode);

4.2 在jQuery中,插入节点的方法比原生JS多的多

在匹配元素子节点列表结尾添加内容

$(‘#El‘).append(‘<p>Hello World.</p>‘);

把匹配元素添加到目标元素子节点列表结尾

$(‘<p>Hello World.</p>‘).appendTo(‘#El‘)

在匹配元素子节点列表开头添加内容

$(‘#El‘).prepend(‘<p>Hello World.</p>‘);

把匹配元素添加到目标元素子节点列表开头

$(‘<p>Hello World.</p>‘).prependTo(‘#El‘);

在匹配元素之前添加目标内容

$(‘#El‘).before(‘<p>Hello World.</p>‘);

把匹配元素添加到目标元素之前

$(‘<p>Hello World.</p>‘).insertBefore(‘#El‘);

在匹配元素之后添加目标内容

$(‘#El‘).after(‘<p>Hello World.</p>‘);

把匹配元素添加到目标元素之后

$(‘<p>Hello World.</p>‘).insertAfter(‘#El‘);

五、删除节点

5.1 原生JS删除节点

El.parentNode.removeChild(El);

5.2 jQuery删除节点

$(‘#El‘).remove();

六、替换节点

6.1 原生JS替换节点

El.repalceChild(newNode, oldNode);

6.2 jQuery替换节点

$(‘p‘).replaceWith(‘<p>Hello World.</p>‘);

七、设置属性/获取属性

7.1 原生JS设置属性/获取属性

imgEl.setAttribute("title", "logo");
imgEl.getAttribute("title");
checkboxEl.checked = true;
checkboxEl.checked;

7.2 jQuery设置属性/获取属性:

$("#logo").attr({"title": "logo"});
$("#logo").attr("title");
$("#checkbox").prop({"checked": true});
$("#checkbox").prop("checked");
时间: 2024-10-12 11:44:25

原生JS与jQuery操作DOM对比的相关文章

原生js和Jquery操作DOM

原生javascript和jQuery操作DOM的对比总结 目录: DOM元素节点:1)文档节点:2)元素节点:3)属性节点:4)文本节点:5)注释节点 1)创建节点 2)选择(访问)节点 3)操作: 1)节点操作 1)添加节点 2)删除节点 3)修改内容: 1)文本[text] 2)html 3)表单val 4)改变事件 2)CSS操作 3)动画 下文转自:http://www.jb51.net/article/103583.htm 这篇文章主要给大家介绍了原生JS和jQuery操作DOM的一

原生JS与jQuery操作DOM有什么异同点?

本文和大家分享的主要是原生JS与jQuery操作DOM相关内容,一起来看看吧,希望对大家学习javascript有所帮助. 一.创建元素节点 1.1 原生 JS 创建元素节点 document.createElement("p"); 1.2 jQuery 创建元素节点 $('<p></p>');` 二.创建并添加文本节点 2.1 原生JS创建文本节点 document.createTextNode("Text Content"); 通常创建文

原生JS和jQuery操作DOM的区别小结

一.Js原生对象和jQuery实例对象的相互转化: (1).原生JS对象转JQ对象: $(DOM对象); (2). JQ对象转原生JS对象: $(DOM对象).get(index); //注意区分eq(index)是jQuery实例对象; 直接下标访问, $(DOM对象)[index]; 二.两者操作DOM的对比 一.创建元素节点 1.1 原生JS创建元素/文本节点 1 document.createElement("p"); 1.2 jQuery创建元素/文本节点 1 $('<

原生js与jQuery操作DOM的区别

转自网络 一.创建元素节点 1.1 原生JS创建元素节点 ? 1 document.createElement("p"); 1.2 jQuery创建元素节点 ? 1 $('<p></p>');` 二.创建并添加文本节点 2.1 原生JS创建文本节点 ? 1 `document.createTextNode("Text Content"); 通常创建文本节点和创建元素节点配合使用,比如: ? 1 2 3 var textEl = documen

原生js 与 jQuery对比

1.原生JS与jQuery操作DOM对比  :   https://www.cnblogs.com/QianBoy/p/7868379.html 2.比较jQuery与JavaScript的不同功能实现   :   http://www.cnblogs.com/QianBoy/p/7868291.html 原文地址:https://www.cnblogs.com/wfblog/p/9178892.html

【第2章第300回】原生JS与jQuery对AJAX的实现

一.定义 W3C里这么解释AJAX: AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).AJAX 不是新的编程语言,而是一种使用现有标准的新方法.AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下. 就是利用JS来无刷新与后端交互,通过get和post方式把数据发送到后端,或者请求后端的数据,然后根据请求的数据进行改变DOM节点等操作,从而取消掉用form的submit方式一提交就会跳转页面的情况

【前端性能】必须要掌握的原生JS实现JQuery

很多时候,我们经常听见有人说jquery有多快多快.在这个各种类库满天飞的时候,不得不说的是,能有原生JS快吗? 是的,明显原生JS要更快,因为诸如JQuery这样的库必须要兼容各种浏览器和低版本和许多其他的东西,考虑通用性必然会导致性能的损耗. 当然,我不是提倡写代码纯用原生JS实现,我记得淘宝玉伯曾经说的一句话“框架能够让我们走的更快,但只有了解原生的JS才能让我们走的更远”. 一些感(fei)想(hua): 1.原生的js,好比全真教的武功,一步步从基础开始(先练气再御剑),很长一段时间内

【JS】如何用原生JS实现jQuery的ready方法

Jquery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,不过与window.onload方法还是有区别的. 总的来说,window.onload()方法是必须等到页面内包括图片的所有元素加载完毕后才能执行.$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕.   具体一些,可以从以下几方面对比它们的区别: 1.执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行

【JS】怎样用原生JS实现jQuery的ready方法

Jquery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,只是与window.onload方法还是有差别的. 总的来说,window.onload()方法是必须等到页面内包含图片的全部元素载入完成后才干运行. $(document).ready()是DOM结构绘制完成后就运行,不必等到载入完成.   详细一些.能够从下面几方面对照它们的差别: 1.运行时间 window.onload必须等到页面内包含图片的全部元素载入完成后才干运