我需要为我的Web应用程序添加基于javascript的framebuster,这有助于防止对不支持X-FRAME-OPTIONS的旧版浏览器进行点击劫持(或跨框架脚本)攻击。
在搜索互联网后,我发现目前似乎有两种方法,如下所示。作为一个完整的javascript新手,我更喜欢方法1的简单性。
我的问题是 - 这两种方法目前是否仍然有效,或者其中任何一种方法已被“破坏”?
编辑:改变了我的问题,询问两种方法而不仅仅是方法1.
方法1(来自http://en.wikipedia.org/wiki/Framekiller#Modern_framekiller):
if (self == top) {
document.documentElement.style.display = 'block';
} else {
top.location = self.location;
}
<style id="antiClickjack">body{display:none !important;}</style>
<script type="text/javascript">
if (self === top) {
var antiClickjack = document.getElementById("antiClickjack");
antiClickjack.parentNode.removeChild(antiClickjack);
} else {
top.location = self.location;
}
</script>
非常感谢。