<div class="stuff">
<span class="to_hide"> blah </span>
<span id="permanent"> like glue </span>
</div>
我想抓住$(".stuff").text()
,但我不是#tmp
的文字
我的工作正常$(".to_hide").remove()
但我不希望删除操作对页面本身产生影响。如果我删除它或分离,我需要知道元素的位置(假设许多.to_hide
个节点)
如何在忽略.text()
.to_hide
答案 0 :(得分:2)
一种简单的方法是使用克隆
var text = $(".stuff").clone().find('.to_hide').remove().end().text();
console.log(text)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="stuff">
<span class="to_hide"> blah </span>
<span id="permanent"> like glue </span>
</div>
&#13;
您也可以这样做 - 但是如果您有复杂的系统和文本节点,它们是stuff
的直接后代,则可能无法正常工作
var text = $(".stuff *").not('.to_hide').text();
console.log(text)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="stuff">
<span class="to_hide"> blah </span>
<span id="permanent"> like glue </span>
</div>
&#13;
答案 1 :(得分:1)
你需要制作一个克隆然后从div
获取文本var clone =$(".stuff").clone();
clone.find(".to_hide").remove();
var text= clone.text()
console.log(text);
答案 2 :(得分:0)
另一种方法是从整个文本块中减去要排除的文本。
type Page struct {
PageId string `bson:"pageId",json:"pageId"`
Meta map[string]interface{} `bson:"meta",json:"pageId"`
}
最终,解决方案的复杂性将取决于您希望运行的DOM。此外,您可以通过依靠DOM库来获得更多收益。