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("mydemo");
通常创建文本节点和创建元素节点配合使用.
比如:
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。
4, 插入节点
传统的 javascript 方法,插入节点:
比如:
appendChild() :
给元素追加一个子节点,新的节点 插入到 最后。
var container =document.createElement("p");
document.body.appendChild(container);
insertBefore() :
顾名思义,就是把一个新的节点插入到目标节点的前面。
Element.insertBefore( newNode , targerNode);
在 jQuery 中插入节点比 javascript 自带的多了很多,
比如:
.append()
.appendTo()
.prepend()
.prependTo()
.after()
.insertAfter()
.before()
.insertBefore()
所以对 dom 操作的简化也是 jquery 的亮点之一。
5, 删除节点
传统的 javascript 方法,删除节点:
比如:
var b =document.getElementById("b");
var c = b.parentNode;
c.removeChild(b);
在 jQuery 中的删除节点:
比如:
$('#test2').remove();
6, 替换节点
传统的 javascript 方法,替换节点:
比如:
Element.repalceChild( newNode , oldNode );
oldNode 必须是 Element 的一个子节点。
在 jQuery 中的替换节点:
比如:
$("< p>替换 test1 ! </p>").replaceAll("#test1");
7 ,设置属性,获取属性
传统的 javascript 方法,设置属性,获取属性:
比如:
setAttribute();//设置
var a = document.createElement(“p”);
a.setAttribute("title","mydemo");
不管以前有没有 title 属性,以后的值是 my demo。
getAttribute();//获取
var a=document.getElementById("cssrain");
var b = a.getAttribute("title");
获取的时候,如果属性不存在,则返回空,
在 jQuery 中的设置属性,获取属性:
比如:
$("#test1").attr({"class" : "test" , "title" :"TestDemo!" });
$("#test1").attr("class");
8, 查找节点
查找节点对 jQuery 来说简直是小菜一碟.
jQuery 最引入关注的就是查找节点,也就是通常所说的选择器.
比如:
$('#id')
$('.class')
$('tag')
$('tag.class')
$('#id tag')
$('tag#id')
$('#id:visible')
$('#id .class')
$('.class .class')
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。