我试图找出如何选择单个文本片段然后用H1包装它。我正在寻找一些真正轻量级的东西,因为它只在我的网站上使用1个点。这似乎很简单,但要么答案太冗长而无法理解,或者我似乎无法让它发挥作用。
HTML
<div class="innerWrapper">
Office Current Listings
</div>
JS
$('div.innerWrapper:contains("Office Current Listings")').html()
.replace('Office Current Listings', '<h1>Office Current Listings</h1>');
我使用了this previous question的答案,但似乎没有用。如果您想看一下,我会为它制作一个演示。
答案 0 :(得分:4)
这个怎么样?
$('div.innerWrapper:contains("Office Current Listings")').wrapInner('<h1/>');
- 更新 -
处理文本在任何地方,包括子div,尝试这个:
$('div.innerWrapper').each(
function(index) {
var $el = $(this);
var html = $el.html();
$el.html(html.replace(/Office Current Listings/g, "<h1>Office Current Listings</h1>"));
}
);
答案 1 :(得分:2)
var div = $('div.innerWrapper:contains("Office Current Listings")');
var html = div.html();
div.html(html.replace('Office Current Listings', '<h1>Office Current Listings</h1>'));
您实际上并未设置div的html。 replace
是string
的函数,因此您要替换文本,然后对其执行任何操作。