重走JAVA程式設計路:Js中self,top,parent,opener詳解,傻傻分不清楚
昨天專案遇到的問題:取上級window視窗物件時,傻傻分不清楚!你能分清楚嗎?
當我們在瀏覽器中開啟一個網頁時,瀏覽器都會建立一個視窗物件,這個視窗就是一個window物件。也就是Js生存依附的全域性環境物件和全域性作用域物件。
1.Self 指當前視窗頁面,就是window物件
例如:Self.close()和window.close()一樣。
2.Top表示最頂層的一個視窗頁面
最頂層頁面===》父頁面===》子頁面,self.top就代表其中的最頂層頁面,相當於子頁面的祖父。
self.top 等於self.parent.parent
3.Parent在進行父頁面訪問時使用
parent用於在iframe框架頁中,frame框架頁中生成的子頁面中訪問父頁面的物件。例如:A頁面中有一個iframe或frame,那麼iframe
或frame中的頁面就可以通過parent物件來引用A頁面中的物件。這樣就可以獲取或返回值到A頁面中。
4.Opener在進行父頁面引用時使用
opener用於在window.open開啟的頁面引用執行window.open方法的的上級頁面的物件。例如:A頁面通過window.open()方
法彈出了B頁面,在B頁面中就可以通過opener來引用A頁面,這樣就可以通過這個物件來對A頁面進行操作。
window.opener.location.reload(); //子視窗重新整理父視窗
window.opener.location.href //獲取父視窗href
window.opener.locaiton.pathname //獲取父視窗路徑名
//重新整理父頁面
window.location.href=window.location.href ; //重新定位父頁面
window.location.reload;
parent與opener的區別:
parent是相對於框架來說父視窗物件
opener是針對於用window.open開啟的視窗來說的父視窗,前提是window.open開啟的才有。
如下: parent.frame1.document.forms[0].elements[0].value;
拓展:jquery獲取父視窗的元素
取父視窗的元素方法:$(selector, window.parent.document);
("#父視窗元素ID",window.parent.document); 對應javascript的程式碼:window.parent.document.getElementByIdx_x("父視窗元素ID");
相關推薦
重走JAVA程式設計路:Js中self,top,parent,opener詳解,傻傻分不清楚
昨天專案遇到的問題:取上級window視窗物件時,傻傻分不清楚!你能分清楚嗎? 當我們在瀏覽器中開啟一個網頁時,瀏覽器都會建立一個視窗物件,這個視窗就是一個window物件。也就是Js生存依附的全域性環境物件和全域性作用域物件。 1.Self 指當前視窗頁面,就是wind
重學 Java 設計模式:實戰狀態模式「模擬系統營銷活動,狀態流程稽核釋出上線場景」
![](https://img-blog.csdnimg.cn/20200702222126624.png) 作者:小傅哥 部落格:[https://bugstack.cn](https://bugstack.cn) - `原創系列專題文章` >沉澱、分享、成長,讓自己和他人都能有所收穫!
前端學習筆記之js中apply()和call()方法詳解
經過網上的大量搜尋,漸漸明白了apply()和call方法的使用,為此寫一篇文章記錄一下。 定義 apply()方法: Function.apply(obj,args)
資料爬蟲(三):python中requests庫使用方法詳解
一、什麼是Requests Requests 是⽤Python語⾔編寫,基於urllib,採⽤Apache2 Licensed開源協議的 HTTP 庫。它⽐ urllib 更加⽅便,可以節約我們⼤量的⼯作,完全滿⾜HTTP測試需求。 ⼀句話——Python實現的簡單易
js中三種作用域詳解(全域性,函式,塊級)
1.全域性變數:宣告在函式外部的變數(所有沒有var直接賦值的變數都屬於全域性變數) 2.區域性變數:宣告在函式內部的變數(所有沒有var直接賦值的變數都屬於全域性變數) JS中變數申明分顯式申明和隱
整理:C++中sprintf()函式的使用詳解
sprintf 是個變參函式,定義如下:int sprintf( char *buffer, const char *format [, argument] ... ); 除了前兩個引數型別固定外,後面可以接任意多個引數。而它的精華,顯然就在第二個引數:(1)格式化字串上。printf 和sprintf 都使
Linux管道程式設計技術:dup函式,dup2函式,open函式詳解
(一)dup函式,dup2()函式 1.dup和dup2也是兩個非常有用的呼叫,它們的作用都是用來複制一個檔案的描述符。它們經 常用來重定向程序的stdin、stdout和stderr。這兩個函式的 原形如下: #include <unistd.h> i
學習筆記之js中匯出表格到excel詳解+原始碼
在系統開發中,經常會遇到要將一個表格資料匯出到excel中,剛剛做完,把示例程式碼共享一下,話不多說直接上程式碼。 <!DOCTYPE html> <html> <head lang="en"> <meta c
Android中的介面回撥詳解,回撥機制:以Activity和Adapter傳遞資料為例。
首先解決啥是回撥: 我覺得這個例子比較好:某天,我打電話向你請教問題,當然是個難題,你一時想不出解決方法,我又不能拿著電話在那裡傻等,於是我們約定:等你想出辦法後打手機通知我,這樣,我就掛掉電話辦其它事情去了。過了XX分鐘,我的手機響了,你興高采烈的說問題已經搞定,應該
[轉載]最詳盡的 JS 原型與原型鏈終極詳解,沒有「可能是」。(一)
三篇文章都更新完畢,完整的剖析了 JS 原型與原型鏈,希望通過這些教程能讓你對 Javascript 這門語言理解的更透徹!一. 普通物件與函式物件JavaScript 中,萬物皆物件!但物件也是有區別的。分為普通物件和函式物件,Object 、Function 是 JS 自帶的函式物件。下面舉例說明var
轉載 最詳盡的 JS 原型與原型鏈終極詳解,沒有「可能是」。(一)
-s 繼續 沒有 clas 程序設計 target 普通 fop 曾經 轉自:https://www.jianshu.com/p/dee9f8b14771 三篇文章都更新完畢,完整的剖析了 JS 原型與原型鏈,希望通過這些教程能讓你對 Javascript 這門語言
Mysql高手系列 - 第10篇:常用的幾十個函式詳解,收藏慢慢看
這是Mysql系列第10篇。 環境:mysql5.7.25,cmd命令中進行演示。 MySQL 數值型函式 函式名稱 作 用 abs 求絕對值 sqrt 求二次方根 mod 求餘數 ceil 和 ceiling 兩個函式功能相同,都是返回不小於引數的最小整數,即向上取整 floo
css3筆記系列-3.css中的各種選擇器詳解,不看後悔系列
最詳細的css3選擇器解析 選擇器是什麼? 比較官方的解釋:在 CSS 中,選擇器是一種模式,用於選擇需要新增樣式的元素。 最常見的 CSS 選擇器是元素選擇器。換句話說,文件的元素就是最基本
Hive 中的四種排序詳解,再也不會混淆用法了
Hive 中的四種排序 排序操作是一個比較常見的操作,尤其是在資料分析的時候,我們往往需要對資料進行排序,hive 中和排序相關的有四個關鍵字,今天我們就看一下,它們都是什麼作用。 資料準備 下面我們有一份溫度資料,tab 分割 2008 32.02008&nb
重走Java基礎:面向物件-介面(interface)
介面 1. 介面概念 介面是功能的集合,同樣可看做是一種資料型別,是比抽象類更為抽象的”類”。 介面只描述所應該具備的方法,並沒有具體實現,具體的實現由介面的實現類(相當於介面的子類)來完成。這樣將功能的定義與實現分離,優化了程式設計。 請記住:一切事物均有功能,即一切事物均
重走Java基礎:面向物件-抽象類(abstract)
抽象類,什麼是抽象類? 1. 抽象類的產生 當編寫一個類時,我們往往會為該類定義一些方法,這些方法是用來描述該類的功能具體實現方式,那麼這些方法都有具體的方法體。 但是有的時候,某個父類只是知道子類應該包含怎麼樣的方法,但是無法準確知道子類如何實現這些方法。比如一個圖形類應該有一
Java之路:Java 8中關於流的新功能
在Java 8 中的Java.io包和java.nio包中增添了一些方便、實用的操作I/O的方法,這裡的nio是java nonblocking input output(非阻塞IO)的簡寫。 下面簡要介紹其中的一些主要方法。 1、Java.io.BufferedRea
【搞定Java併發程式設計】第22篇:Java中的阻塞佇列 BlockingQueue 詳解
上一篇:Java併發容器之ConcurrentHashMap詳解 本文目錄: 1、阻塞佇列的基本概念 2、ArrayBlockingQueue 2.1、ArrayBlockingQueue的基本使用 2.2、ArrayBlockingQueue原理概要 2.3、ArrayBl
【搞定Java併發程式設計】第28篇:Java中的執行緒池詳解
上一篇:Java中的併發工具類之執行緒間交換資料的 Exchanger 本文目錄: 1、執行緒池的實現原理 2、執行緒池的使用 2.1、執行緒池的建立 2.2、向執行緒池提交任務 2.3、關閉執行緒池 2.4、合理地配置執行緒池 2.5、執行緒池的監控
Java程式設計基礎:在Mybatis註解中使用typeHandler實現Java列舉與資料庫int值的自動轉換
概述 在專案開發過程中經常會遇到資料庫儲存的是數值,在Java程式碼列舉表示的欄位。這些欄位在儲存和查詢時需要做一個轉換:寫資料庫的時候將列舉轉換為數字,讀資料庫時將數字轉換為列舉。 下面介紹一種通過mybatis註解實現資料型別自動轉換的方式。該方式能處理