JS window对象的top、parent、opener含义介绍 以及防止网页被嵌入框架的代码
1.top
該變更永遠指分割窗口最高層次的瀏覽器窗口。如果計劃從分割窗口的最高層次開始執行命令,就可以用top變量。?
2.opener
opener用于在window.open的頁面引用執行該window.open方法的的頁面的對象。例如:A頁面通過window.open()方
法彈出了B頁面,在B頁面中就可以通過opener來引用A頁面,這樣就可以通過這個對象來對A頁面進行操作。?
3.parent
parent用于在iframe,frame中生成的子頁面中訪問父頁面的對象。例如:A頁面中有一個iframe或frame,那么iframe
或frame中的頁面就可以通過parent對象來引用A頁面中的對象。這樣就可以獲取或返回值到A頁面中。
4.另外self 指的是當前窗口
parent與opener的區別:
parent指父窗口,在FRAMESET中,FRAME的PARENT就是FRAMESET窗口。?
opener指用WINDOW.OPEN等方式創建的新窗口對應的原窗口。?
parent是相對于框架來說父窗口對象?
opener是針對于用window.open打開的窗口來說的父窗口,前提是window.open打開的才有
document.parentWindow.menthod()調用父頁面的方法
?
top實例
<!DOCTYPE html>
?<html>
?<head>?
<meta charset="utf-8">?
<title>top</title>?
<script>?
function check(){?
????if (window.top!=window.self) {?
????????document.write("<p>這個窗口不是最頂層窗口!我在一個框架?</p>")?
????}?
????else{?
????????document.write("<p>這個窗口是最頂層窗口!</p>")?
????}?
}?
</script>?
</head>?
<body>?
<input type="button" οnclick="check()" value="檢查窗口">?
</body>?
</html>
?
一段很簡單的防止網頁被嵌入框架的代碼javascript代碼,大家只要將它放入網頁源碼的頭部,那些流氓就沒有辦法使用你的網頁了。
<script type="text/javascript">
if (window!=top) // 判斷當前的window對象是否是top對象
top.location.href =window.location.href; // 如果不是,將top對象的網址自動導向被嵌入網頁的網址
</script>
?
總結
以上是生活随笔為你收集整理的JS window对象的top、parent、opener含义介绍 以及防止网页被嵌入框架的代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: gitlab的升级【二】旧数据的备份和新
- 下一篇: Windows安装TensorFlow