以编程方式删除<script src =“/ unwanted.js”.. =“”> reference </script>

时间:2009-10-15 23:51:52

标签: javascript

我可以部分控制网页,我可以在各个地方输入代码片段,但我无法删除任何预先存在的代码。

页面中间有一个脚本引用

<script src="/unwanted.js" type="text/javascript"></script> 

但我不想加载脚本。我无法访问unwanted.js文件。反正我是否可以使用上面这个引用执行的javascript导致unwanted.js文件无法加载?

修改:要回答有关内容和原因的评论:

我正在设置一个Stack Exchange站点,并且WMD * js文件在页面的中间加载。 SE将允许您在页面的各个部分插入HTML - 因此您可以使用自定义页眉和页脚等。我想用我自己的版本覆盖标准WMD代码。 我可以通过在原始WMD脚本加载并用我自己的代码替换函数之后加载javascript来解决这个问题 - 但是不要不必要地加载如此大量的JS负载。

* WMD =此处在SO和SE网站上使用的降价编辑器。

5 个答案:

答案 0 :(得分:3)

请告诉我们你能做什么和不能做什么,并且(最好;这听起来很有趣)为什么。

如果可以,请尝试在脚本包含之前插入<!--,然后在-->之后插入以对其进行评论。

或者,查看脚本文件,看看是否有任何方法可以打破它或使其效果无效。 (这完全取决于脚本本身;如果您需要更具体的建议,请发布更多详细信息,或者最好是脚本本身。

答案 1 :(得分:2)

总之,你不能。即使存在黑客攻击,也会严重依赖于浏览器解析HTML并加载脚本的方式,因此不会与所有浏览器兼容。

答案 2 :(得分:0)

你可以在它上面开一个HTML注释,然后在另一个块下面结束吗?

unwanted.js的内容是什么样的?

答案 3 :(得分:0)

使用简单的东西(例如:

)调用DOM后,可以从DOM中删除脚本
s = document.getElementById ("my_script");
s.parentNode.removeChild(s);

这将停止脚本的所有功能,但不会将其从用户的缓存中删除。但是就像你想要的那样它无法使用。

答案 4 :(得分:0)

除非您在呈现页面内容之前访问页面内容,否则基本上不能这样做。 如果您可以在将HTML发送到浏览器之前对其进行操作,则可以编写与所需代码段匹配的正则表达式,并将其删除。