有没有一种方法可以多次使用Jquery的.unwrap()
而不进行复制和粘贴?如果它可以接受参数或类似.unwrap(4)
的代码,但它不能接受,那就太好了。是否有更聪明的解决方案来实现以下目标?
$(".foo a").unwrap().unwrap().unwrap().unwrap();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="foo">
<div>
<ul>
<li>
<div>
<a href="#">Link 1</a>
</div>
</li>
</ul>
</div>
</li>
<li class="foo">
<div>
<ul>
<li>
<div>
<a href="#">Link 2</a>
</div>
</li>
</ul>
</div>
</li>
<li class="foo">
<div>
<ul>
<li>
<div>
<a href="#">Link 3</a>
</div>
</li>
</ul>
</div>
</li>
</ul>
最佳答案
您可以随时编写自己的:
$.fn.unwrapTimes = function(times){
var unwrapCount = times;
return this.each(function(){
var $this = $(this);
for(var i=0;i<unwrapCount;i++){
$this.unwrap();
}
});
};
fiddle
显然,应更改名称,但逻辑是合理的。
关于javascript - 您如何多次.unwrap()元素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30112665/