是否可能检测到由浏览器插件、代理、xss等加载到页面的外部脚本?
假设我有这个网页:
<html>
<head>
<title>Hello world!</title>
<script src="http://mydomain.com/script.js"></script>
</head>
<body>
Hello world!
</body>
</html>
我是否可以在我的script.js
文件中包含一些脚本,以便检测页面上的其他脚本元素是否不是来自http://mydomain.com
?
我想要一些能够检测其他脚本的东西,无论它们是如何被包含在源代码中的(即它们在onload事件触发时存在),还是在页面加载后添加的。
如果我能够检测到这些脚本,那么我也能够阻止它们吗?
如果我知道有其他东西正在进行,那么这对于调试用户报告的javascript/ui问题非常有用。
我使用jQuery,所以jQuery的答案对我有效。我只是不想将答案限制在仅使用jQuery上。
编辑
我的解决方案如下。但是,它存在两个(潜在的)问题:
- 它依赖于jQuery。
- 它无法检测通过CSS @import规则(或任何带有
url()
值的规则)加载的外部资源。
如果有人想提交一个解决这些问题中的一个或两个的答案,我会点赞。
如果您解决了这两个问题,我将接受您的答案。