Chrome 扩展程序会在加载页面时自动更改 HTML 标签吗?

Chrome 扩展程序会在加载页面时自动更改 HTML 标签吗?

是否有任何 Chrome 扩展程序可以在显示最终页面之前拦截页面加载并转换特定标签?例如,如果某个页面包含<br>,我希望<p>在显示它之前先将其转换为特定标签?

答案1

使用 jQuery,您将会得到如下脚本(未经测试):

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(function()
{$('body').html($('body').html().replace(/<br>\\*/g,"<p></p>"));});
</script>

另一个工具是油脂猴,在 Chrome 上是 Tampermonkey 扩展
脚本的示例想法是(未经测试):

bps = document.getElementsByTagName("bp");
if (bps.length > 0) {
  for (i = 0, j = bps.length; i < j; i++) {
     var p = document.createElement("p");
     p.innerHTML = bps[i].innerHTML
     bps[i].parentNode.replaceChild(p, bps[i]);
  }
}

答案2

我只能想象这样一个概念,即通过一个扩展程序可以让你修改页面的 CSS/JavaScript。其中一个扩展程序叫做为网站定制 JavaScript。它还允许您使用 jQuery,从而使任务变得更加容易。

<br>但用替换<p>实际上不起作用,它们不是同一类型的元素。如果您想要更宽的换行符,请用 替换<br><br>

StackOverflow 上有许多关于如何替换标签的答案,比如下面这个:https://stackoverflow.com/questions/7093417/using-jquery-to-replace-one-tag-with-another

另外:有一些 RegEx 替换扩展可能允许您执行此操作。不过,您也可以在 JavaScript 中编写 RegEx 替换。

相关内容