Javascript如何防止向DOM添加HTML元素



假设我有以下HTML源代码:

<html>
<head>
<script src="myscript.js"></script>
<meta charset="utf-8">
<script>/*other script*/</script> 
<link rel="stylesheet" ...> 
</head>
<body>
<div>...</div>
</body>
</html>

myscript.js代码是什么样子的,以防止添加DOM元素,就像源代码是原始代码一样?

<html>
<head>
<script src="myscript.js"></script>
</head>
<body>
</body>
</html>

我已经尝试过为所有节点覆盖JavaScriptDOM操作方法,如.append.prepend.appendChild.inserBefore等。尽管如此,浏览器还是添加了<meta><script><link><div>等。javascript覆盖似乎只影响javascript创建的节点。。。这是有意义的IMO.

问题是:有没有一种方法可以防止添加作为下载HTML源代码一部分的DOM项?

您正在寻找Window.stop:

window.stop((在当前浏览上下文中停止进一步的资源加载,相当于浏览器中的停止按钮。

由于脚本是如何执行的,此方法不能中断其父文档的加载,但会停止其图像、新窗口和其他仍在加载的对象。

这里有一个例子:

<div>Div #1</div>
<p>Paragraph #1</p>
<div>Div #2</div>
<script>
window.stop();
</script>
<p>Paragraph #2</p><!-- This element is not rendered -->

最新更新