使用Tampermonkey我想反转bbc新闻网站上的文字(为什么?因为),显然这只是本地的。我已经写了一些东西来替换它的一部分,问题是访问页面上的所有文本。在JQuery中有一种有效的方法吗?
e.g。我有一个reverse()函数,给出:
<div>
<a href="...">Text1</a>
<span class="...">Text2</a>
<fieldset>
<legend>Text3</legend>
是否有某种方法可以在不触及任何其他内容的情况下定位Text1,Text2和Text3?我可以写一些东西来在遍历DOM时显式检查tagName,并希望有一个文本类型,或类似的东西,但我想知道JQuery是否已经有了这样做的东西?
感谢
答案 0 :(得分:2)
反向离开!
$('*').contents().filter(function() {
return this.nodeType === 3;
}).each(function() {
this.nodeValue = esrever.reverse(this.nodeValue);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://raw.githubusercontent.com/mathiasbynens/esrever/master/src/esrever.js"></script>
<div>
<a href="...">Text1</a>
<span class="...">Text2</a>
<fieldset>
<legend>Text3</legend>
&#13;