JavaScript Window - 瀏覽器物件模型
瀏覽器物件模型 (BOM) 讓 JavaScript 有能力與瀏覽器「對話」。
Window 物件
所有瀏覽器都支援 window 物件。它表示瀏覽器視窗。
所有 JavaScript 全域物件、函數、變數均自動成為 window 物件的成員。
全域變數是 window 物件的屬性。
全域函數是 window 物件的方法。
甚至HTML DOM 的document 也是window 物件的屬性之一:
window.document.getElementById("header");
與此相同:
document.getElementById("header");種方法能夠決定瀏覽器視窗的尺寸(瀏覽器的視口,不包括工具列和捲軸)。
對於Internet Explorer、Chrome、Firefox、Opera 以及Safari:
window.innerHeight - 瀏覽器視窗的內部高度
window.innerWidth - 瀏覽器視窗的內部寬度
對於Internet Explorer 8、7、6、5: documentElement.clientHeight
document.documentElement.clientWidth
或
document.body.clientHeight
document.body.clientWidth
. umentElement. clientWidth
|| document.body.clientWidth;
var h=window.innerHeight
|| document.documentElement.clientHeight
|| document.body.openclient.documentElement.clientHeight
|| document.body.opencli]Height;打開新視窗
window.close() - 關閉目前視窗
window.moveTo() - 移動目前視窗
window.resizeTo() - 調整目前視窗的尺寸
Window Scr.資訊.
一些屬性:
screen.availWidth - 可用的螢幕寬度(屬性返回訪客螢幕的寬度,以像素計,減去介面特性,例如視窗任務欄。)
screen.availHeight - 可用的螢幕高度(屬性返回訪客螢幕的高度,以像素計,減去介面特性,例如視窗任務列。新的頁面。
location.hostname 傳回web 主機的網域名稱
location.pathname 傳回目前頁面的路徑與檔案名稱
location.port 傳回web 主機的連接埠(80 或443)
location.protocol 傳回web 主機的連接埠(80 或443)
location.protocol 傳回所使用的連接埠 協定(http:/web / 或https://)
location.href 屬性傳回目前頁面的URL。
location.assign() 方法載入新的文件。
實例:
<script> <br/>document.write(location.href); <br/></script>
以上程式碼輸出為:
http://www.w3school.com.cn/js/js_window. location.assign 與location.replace的差異
window.location.assign(url) : 載入URL 指定的新的HTML 文件。 就相當於一個鏈接,跳到指定的url,
當前頁面會轉為新頁面內容,可以點擊後退返回上一個頁面。
window.location.replace(url) : 透過載入 URL 指定的文件來取代目前文件 ,這個方法是取代目前視窗頁面,
前後兩個頁面共用一個窗口,所以是沒有後退返回上一頁的。
Window History
history.back() - 與瀏覽器點擊後退按鈕相同(載入歷史清單中的前一個URL。)
history.forward() - 與在瀏覽器中點擊按鈕向前相同(載入歷史清單中的下一個URL。
JavaScript 訊息框
在 JavaScript 中建立三種訊息框:警告框、確認框、提示框。
警告框
當警告框出現後,使用者需要點選確定按鈕才能繼續操作。
語法:
alert("文字")
確認框
當確認框出現後,使用者需要點選確定或取消按鈕才能繼續操作。
如果使用者點選確認,那麼回傳值為 true。如果使用者點擊取消,那麼傳回值為 false。
語法:
confirm("文本")
語法:
提示框
當提示框出現後,使用者需要輸入某個數值,然後點選確認或取消按鈕才能繼續操縱。
如果使用者點選確認,那麼傳回值為輸入的值。如果使用者點擊取消,那麼傳回值為 null。
語法:
prompt("文字","預設值")
實例:
JavaScript 計時
透過使用JavaScript,我們有能力做到在設定的時間間隔之後來執行程式碼,
而不是在函數被呼叫後立即執行。我們稱之為計時事件。
setTimeout()
語法
var t=setTimeout("javascript語句",毫秒)
第一個參數是含有 JavaScript 語句的字串。這個語句可能諸如"alert('5 seconds!')",或是對函數的呼叫
實例: (無窮循環)