如何使用jQuery解包所有父项?
-编辑-
对不起,我应该提供更多信息。 基本上,我试图瞄准所有a
被p
标记包围的span
的唯一孩子。 我希望以下方法可以解决问题,但它只打开了p
标签。 我想知道是否有办法删除span
标签。
$('p > span:only-child > a:only-child').unwrap();
这样做:
$(document).ready(function() { var https://stackoverflow.com/questions/6085879/how-do-i-unwrap-all-parents-using-jquery/link = $("a").detach(); $("p").remove(); https://stackoverflow.com/questions/6085879/how-do-i-unwrap-all-parents-using-jquery/link.appendTo("body"); });
从DOM中分离链接并将其放在https://stackoverflow.com/questions/6085879/how-do-i-unwrap-all-parents-using-jquery/link
var中。 完全从DOM中删除p
。 将a
重新附加到body
标签。
要将链接精确地放回原位,请将其附加到p
的父级,而不一定是body
元素。 所以,假设你有这个:
您将使用此行代替:
https://stackoverflow.com/questions/6085879/how-do-i-unwrap-all-parents-using-jquery/link.appendTo("#foo");
编辑以响应您的修改:
是的,解包只做一个父级(据我所知)。 所以就这样做两次。 🙂
$('p > span:only-child > a:only-child').unwrap().unwrap();
您尚未提供有关页面上其他元素的足够信息。 以下只是为了让您入门。
var theLink = $("span").html(); $("p").remove(); $("body").html(theLink);