轻松掌握jQuery中wrap()与unwrap()函数的用法
wrap()
wrap()函数可以接受任何字符串或对象,可以传递给$()工厂函数来指定一个DOM结构。这种结构可以嵌套了好几层深,但应该只包含一个核心的元素。每个匹配的元素都会被这种结构包裹。该方法返回原始的元素集,以便之后使用链式方法。
eg:
//在当前页面内追加换行标签和指定的HTML内容 functionw(html){ document.body.innerHTML+="<br/>"+html; } varname="Hello"; functionfoo(a,b){ w(this.name); w(a+b); } //直接调用 foo(1,2); //Hello //3 varobj={name:"CodePlayer",age:18}; varproxy=$.proxy(foo,obj,5,10); //代理调用foo()函数,此时其内部的this指向对象obj proxy(); //CodePlayer //15 运行代码
unwrap()
这个函数将移出元素的父元素。这能快速取消.wrap()方法的效果。匹配的元素(以及他们的同辈元素)会在DOM结构上替换他们的父元素。
eg:
用ID是"content"的div将每一个段落包裹起来
#HTML代码: <div> <p>Hello</p> <p>cruel</p> <p>World</p> </div> #jQuery代码: $("p").unwrap()
结果:
<p>Hello</p> <p>cruel</p> <p>World</p>