是否有任何 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 替换。