1.情景一:自己的页面被引入(嵌入)至别人的页面iframe中
if(window.self != window.top){
//url是自己页面的url
window.top.location.href = url
}
通过顶层框架的判断,得知自己所在的框架是否是顶层框架。来判断自己页面所在的情况。
知识点:不同域中的iframe不能相互访问。
比如我们的页面在别人的页面iframe中,我们的页面跟别人的页面就在不同的域中。
这时候我们通过window.top.location是无法访问location对象的属性的。
但是我们可以设置window.top.location.href。
2.情景二:我们自己的页面被别的js攻击,写入了一个dom。
使用html5最新提供的MutationObserver,可以监控你所选择的dom区域的dom变动。
这样我们就可以检测到插入的是什么节点,并且获取节点。
比如插入的一段script,script中只有一个alert(),那就非常危险了。检测到后进行removeChild()。