我已经尝试过各种版本的“unwrap”,但我一直觉得 unwrap 不是一个函数。我如何在这里放弃 b 标签?
<div id="top_left">
<font size="3">
<b>test</b>
</font>
</div>
我试过了
jQuery("#top_left b").unwrap();
我已经尝试过各种版本的“unwrap”,但我一直觉得 unwrap 不是一个函数。我如何在这里放弃 b 标签?
<div id="top_left">
<font size="3">
<b>test</b>
</font>
</div>
我试过了
jQuery("#top_left b").unwrap();
一个非常简单的方法.unwrap()
是:
$('#top_left font').html($('#top_left font').text());
正如一些评论者指出的那样,<font>
很久以前就被弃用了。
问题是“测试”不是一个元素,而是一个文本节点。
假设您的真实 HTML 可能更复杂,即可能有很多b
元素,并且某些文本不在b
元素中,您应该这样做
$('#top_left b').replaceWith(function(){
return $('<span>', {text:$(this).text()});
});
演示(点击“用JS运行”)
span
但通常情况下,你会从一个给它的类开始处理这种情况,font-weight:bold
然后只是改变它的类。b
, i
, font
, 和类似的元素在今天已经很少用了,它们使所有的风格变化变得更加沉重。
var b = document.getElement... // Get your b tag
b.outerHTML = b.innerHTML;
这可能不需要使用 jQuery 就可以工作。如我错了请纠正我。