javascript和jquery的dom对比

来源:互联网 发布:淘宝食用农产品举证 编辑:程序博客网 时间:2024/05/22 06:24
1 , 创建元素节点
传统的javascript 方法,创建元素节点
var a = document.createElement("p");
jQuery 中创建节点的方法是:
$('< p>< /p>');
和createElement()一样,创建出来的新元素节点不会被自动添加到文档里。
如果想把它添加到文档里,可以使用jQuery 中的append()或者insertAfter()方法或者
before ()等方法。
比如:
var a = $('< p>< /p>');
$('body').append(a);//添加到body 元素的最后.
2,创建文本节点:
传统的javascript 方法,创建文本节点
var b = document.createTextNode("my demo");
通常创建文本节点和创建元素节点配合使用.
比如:
var mes = document.createTextNode("hello world");
var container = document.createElement("p");
container.appendChild(mes);
document.body.appendChild(container);
而在jQuery 中创建节点就不必那么麻烦了:
$('< p>hello world< /p>');
和createElement()一样,创建出来的新元素节点不会被自动添加到文档里。
如果想把它添加到文档里,可以使用jQuery 中的append()或者insertAfter()方法或者
before ()等方法。
比如:
var a = $('< p>hello world< /p>');
$('body').append(a);//添加到body 元素的最后.
3,复制节点
传统的javascript 方法,复制节点:
比如:
var mes = document.createTextNode("hello world");
var container = document.createElement("p");
container.appendChild(mes);
document.body.appendChild(container);
var newpara = container.cloneNode(true);//true 和false 的区别
document.body.appendChild(newpara );
注意:
true : 是< p>aaaa< /p> 克隆。
false: 只克隆< p>< /p> ,里面的文本不克隆。
可以用firebug 看看。
在jQuery 中复制节点:
var a = $('< p>hello world< /p>');
$('body').append(a);
var clone_a = a.clone();
$('body').append(clone_a);
和createElement()一样,复制出来的新元素节点不会被自动添加到文档里。
如果想把它添加到文档里,可以使用jQuery 中的append()或者insertAfter()方法或者
before ()等方法。
另外还有一个注意:如果克隆后,id 一样,不要忘记用.attr("id","new_id")来改变新的节点
的ID。
原创粉丝点击