仅通过Jquery

时间:2015-05-28 07:42:26

标签: javascript jquery

使用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是否已经有了这样做的东西?

感谢

1 个答案:

答案 0 :(得分:2)

反向离开!

&#13;
&#13;
$('*').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;
&#13;
&#13;