Jquery-如何将元素的父元素从H1更改为P?

Jquery-如何将元素的父元素从H1更改为P?,jquery,Jquery,Jquery-如何将元素的父元素从H1更改为p 我有标题,如何将其更改为标题 我想我可以 $.解开 >然后代码> $.包装< /c>,但是有更好的方法吗?< /p> 这个问题非常接近(我认为它是重复的) 使用此解决方案,您的答案类似于 var p = $('h4'); var a = $('<p/>'). append(p.contents()); p.replaceWith(a); var p=$('h4'); 变量a=$(“”)。 追加(p.contents()); p

Jquery-如何将元素的父元素从H1更改为p

我有
标题
,如何将其更改为
标题


<>我想我可以<代码> $.解开 >然后代码> $.包装< /c>,但是有更好的方法吗?< /p> 这个问题非常接近(我认为它是重复的)

使用此解决方案,您的答案类似于

var p = $('h4');
var a = $('<p/>').
    append(p.contents());
p.replaceWith(a);
var p=$('h4');
变量a=$(“

”)。 追加(p.contents()); p、 以(a)取代;


在这里测试:

我将使用H1的内容创建一个新元素,然后隐藏H1

var contents = $('h1').html();
$('h1').after('<p>'+content+'<p>');
$('h1').hide();
var contents=$('h1').html();
$('h1')。在(''+content+'')之后;
$('h1').hide();
HTML:


<h1 id="a">heading</h1>

标题
jQuery:


var $a = $('#a');
var contents = $a.contents();
$a.remove();
$('body').append('<p>' + contents + '</p>');

变量$a=$(“#a”);
var contents=$a.contents();
$a.删除();
$('body')。追加(''+contents+'

');
$。展开
将删除匹配元素的父元素。换句话说,如果
#a
div
的子对象,那么
div
将被删除,而不是
h1
$('h1')。wrapInner('p/>')。children()。unwrap();
$('h1').wrapInner('<p/>').children().unwrap();

$.unwrap然后$.wrap听起来不错。如果您执行$('h1').unwrap().wrap('

')-您将实际删除h1的父项并将其替换为p,结果是标题

。如果h1的父对象是body怎么办?;)为什么不删除()呢?这个脚本不会替换(就像在原地更改一样),它会附加到正文的末尾。这只是我脑海中的一个例子。我不知道文档结构,也不知道wrapInner()方法。