Window物件

1. 概述

Window 物件表示瀏覽器中開啟的視窗。

如果文檔包含框架(frame 或 iframe 標籤),瀏覽器會為 HTML 文檔建立一個 Window 物件,併為每個框架建立一個額外的 Window 物件。

Window物件表示一個瀏覽器視窗或一個框架。在用戶端 JavaScript 中,Window 物件是全局物件,所有的運算式都在當前的環境中計算。

可以透過 Window 來引用 Window 物件,通常情況下可以直接使用 Winodw下的方法。如可以只寫 document,而不必寫 window.document。

同樣,可以把當前視窗物件的方法當作函式來使用,如只寫 alert(),而不必寫 window.alert()。

2. 常用屬性

屬性  
說明  
  closed  傳回視窗是否已被關閉
  document  對 Document 物件只讀引用
  innerheight  傳回視窗文檔顯示區高度
  innerwidth  傳回視窗文檔顯示區寬度
  location  用於視窗或框架的 Location 物件
  name  設定或傳回視窗名稱
  parent  傳回父視窗
  top
  傳回最頂層的先輩視窗

3. 常用方法

方法  
  說明
  alert()  顯示帶有一段訊息和一個確認按鈕的警告框。
  setTimeout()  在指定的毫秒數後呼叫函式或計算運算式
  clearTimeout()  取消由 setTimeout() 方法設定的 timeout
  setInterval()  按照指定的週期(以毫秒計)來呼叫函式或計算運算式
  clearInterval()  取消由 setInterval() 設定的 timeout
  close()  關閉瀏覽器視窗
  confirm()  顯示帶有一段訊息以及確認按鈕和取消按鈕的對話框
  open()  開啟一個新的瀏覽器視窗或尋找一個已命名的視窗
  print()  列印當前視窗的內容
  prompt()  顯示可提示使用者輸入對話框
  scrollBy()  按照指定的像素值來捲動內容
  scrollTo()  把內容捲動到指定的座標

4. 範例

4.1 close() 方法

方法 close() 將關閉有 window 指定的頂層瀏覽器視窗。某個視窗可以透過呼叫 self.close() 或只呼叫 close() 來關閉其自身。

4.2 alert()方法

顯示帶有一段訊息和一個確認按鈕的警告框,通常用來除錯,如:

alert("I am an alert box!!");

彈出框效果如下:

222

4.3 confirm() 方法

confirm() 方法用於顯示一個帶有指定訊息和 OK 及取消按鈕的對話框。
如果使用者點選確定按鈕,則 confirm() 傳回 true。如果點選取消按鈕,則 confirm() 傳回 false。

如:

< script type = "text/javascript" > function show_confirm({
var r = confirm("Press a button!");
if (r == true) {
alert("You pressed OK!");
else {
alert("You pressed Cancel!");
}
} < /script>

效果如下:


4.4 promt() 方法

prompt(text,defaultText)方法用於顯示可提示使用者進行輸入對話框。如果使用者按提示框的取消按鈕,則傳回 null。如果使用者按確認按鈕,則傳回輸入欄位當前顯示的正文。

如:

< script type = "text/javascript" > function disp_prompt({
var name = prompt("請輸入您的名稱""FR"if (name != null && name != "") {
document.write("你好," + name + "!")
}
} < /script>

效果如下:

4.5 open() 方法

window.open(URL,name,features,replace)開啟一個新的瀏覽器視窗或尋找一個已命名的視窗。參數如下:

參數
說明
URL一個可選的字串,宣告瞭要在新視窗中顯示的文檔的 URL。如果省略了這個參數,或者它的值是空字串,那麼新視窗就不會顯示任何文檔。
name一個可選的字串,該字串是一個由逗號分隔的特徵列表,其中包括數字、字母和底線,該字元宣告瞭新視窗的名稱。這個名稱可以用作標記 'a' 和 'form' 的屬性 target 的值。如果該參數指定了一個已經存在的視窗,那麼 open() 方法就不再建立一個新視窗,而只是傳回對指定視窗的引用。在這種情況下,features 將被忽略。
features一個可選的字串,宣告瞭新視窗要顯示的標準瀏覽器的特徵。如果省略該參數,新視窗將具有所有標準特徵。
replace一個可選的布爾值。規定了裝載到視窗的 URL 是在視窗的瀏覽歷史中建立一個新條目,還是更換瀏覽歷史中的當前條目。支援下面的值: true - URL 更換瀏覽歷史中的當前條目。 false - URL 在瀏覽歷史中建立新的條目。

如:  

window.open("https://help.fanruan.com/finereport/");

開啟 FineReport 說明文檔。

4.6 print() 方法

print() 方法用於列印當前視窗的內容。呼叫 print() 方法所引發的行為就像使用者按瀏覽器的列印按鈕。通常,這會產生一個對話框,讓使用者可以取消或客製列印請求。

如:

window.print();

效果如下:

222

4.7 setInterval()方法

setInterval() 方法可按照指定的週期(以毫秒計)來呼叫函式或計算運算式。直到 clearInterval() 被呼叫或視窗被關閉。

透過 setInterval(code,millisec)進行呼叫。參數說明如下:


參數  說明  
  code  必填,要呼叫的函式或要執行的程式碼串
  millisec  週期性執行或呼叫 code 之間的時間間隔,以毫秒計

如實現每 10 s 重新整理一次頁面,程式碼如下:

setInterval("self.location.reload();",10000); //10000ms 即每 10s 重新整理一次頁面。

詳細範例可查看:決策報表定時重新整理

4.8 setTimeout() 方法

setTimeout() 方法用於在指定的毫秒數後呼叫函式或計算運算式,使用 clearTimeout() 方法可阻止函式的執行。

一般如 setTimeout(function, milliseconds, param1, param2, ...)使用,參數說明如下:

參數
說明
function必需,要呼叫一個程式碼串,也可以是一個函式
milliseconds必須,週期性執行或呼叫 code/function 之間的時間間隔,以毫秒計
param1, param2, ...可選, 傳給執行函式的其他參數(IE9 及其更早版本不支援該參數)

報表中使用時,通常用於延遲執行,如 設定 button0 按鈕不可用,延遲 0.5s 執行。

setTimeout(function(){
    _g().getWidgetByName("button0").setEnable(false);
}, 500);


附件列表


主題: 二次開發
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

9s后關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙

反饋已提交

網絡繁忙