我正在使用WordPress的wpdiscuz插件,我想删除.wc-comment-title
的部分内容,即使用jQuery或JavaScript删除段落中句子的一部分。
这是代码:
<p class="wc-comment-title">
<span class="wc_header_text_count">4>/span>
"Comments on "Article 1""
</p>
显示: 4条评论“第1条”
我想说的是: 4评论
评论的数量和文章的名称根据评论的数量和相关文章而变化,这是动态的。
Ex: 3 评论“ Blog Post 4 ”
在这种情况下,我希望它显示: 3评论
有可能吗?
答案 0 :(得分:2)
从wc_header_text_count
班级,您可以使用.nextSibling
获取相邻的文本节点。文本节点有许多可用于操作其内容的方法,但由于您似乎只想将文本Comments
放在其位置,因此您可以完全替换它。
var spans = document.querySelectorAll(".wc_header_text_count")
for (var i = 0; i < spans.length; i++) {
spans[i].nextSibling.data = " Comments";
}
<p class="wc-comment-title">
<span class="wc_header_text_count">4</span>
"Comments on "Article 1""
</p>
<p class="wc-comment-title">
<span class="wc_header_text_count">3</span>
"Comments on "Blog Post 4""
</p>
如果你不一定想要“评论”,而是想要没有引号的第一个单词,你可以使用正则表达式。
var spans = document.querySelectorAll(".wc_header_text_count")
for (var i = 0; i < spans.length; i++) {
spans[i].nextSibling.data =
spans[i].nextSibling.data.replace(/^\s*"?(\w+)[\s\S]*$/, " $1");
}
<p class="wc-comment-title">
<span class="wc_header_text_count">4</span>
"Comments on "Article 1""
</p>
<p class="wc-comment-title">
<span class="wc_header_text_count">3</span>
"Comments on "Blog Post 4""
</p>
答案 1 :(得分:1)
你不能用&#34;替换尾随文本。评论&#34 ;?像这样:https://jsfiddle.net/6o3wha9g/
$('.wc-comment-title').contents().last()[0].textContent=' Comments';