知識總結(jié):
<pre>
瀏覽器對象模型BOM:將瀏覽器常用方法封裝進window對象,對外供js調(diào)用
具體實現(xiàn):window對象
</br>
1.window對象的常用方法:
--框體方法:
alert():警告框
confirm():確認框。點擊確定返回true,點擊取消返回false
prompt("提示語","默認值"):提示框。點擊確定返回當(dāng)前值,點擊取消返回null
</br>
--定時執(zhí)行和間隔執(zhí)行:
setTimeOut(要執(zhí)行的函數(shù),時間):指定時間后開辟線程執(zhí)行指定函數(shù),返回線程id
setInterval(要執(zhí)行的函數(shù),時間):每隔指定時間開辟一個線程執(zhí)行指定的函數(shù),返回線程id
clearInterval(id):關(guān)閉指定的interval開啟的線程
clearTimeout(id):關(guān)閉指定的timeout開啟的線程
</br>
--子頁面方法:
open():使用此方法可以打開當(dāng)前頁面的子頁面,使用以下屬性設(shè)置子頁面窗口的大小,位置,及顯示選項height=400,width=600,top=200,left=400,tooibar=yes,menubar=yes,scrollbars=no,resizable=yes,location=yes,status=yes
close():在子頁面中使用此方法,關(guān)閉使用open打開的子頁面。
</br>
注意:open(父頁面中聲明)和close(子頁面中聲明)需要配套使用,否則close不奏效,即子頁面調(diào)用close方法的前置條件是:子頁面是由父頁面使用open方法打開的
</br>
--重要的屬性:
opener:window.opener.父頁面函數(shù)名
使用opener調(diào)用父頁面的函數(shù)。
</br>
2.window屬性學(xué)習(xí)
--screen:獲取客戶端信息
width:獲取屏幕的寬度分辨率
height:獲取屏幕的高度分辨率
availWidth:可用寬度
availHeight:可用高度
</br>
--location:地址欄屬性
href:可以獲取和修改當(dāng)前地址欄URL信息
reload():刷新當(dāng)前頁面
</br>
--history:歷史記錄屬性
forward():相當(dāng)于瀏覽器的前進按鈕
backward():相當(dāng)于瀏覽器的后退按鈕
go():前進或后退到指定歷史記錄,正整數(shù)表示前進,負整數(shù)表示后退,0表示自己
</br>
--navigator:瀏覽器版本信息屬性
userAgent:獲取當(dāng)前瀏覽器的版本信息
</pre>
代碼示例:
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
function myScreen(){
var screen=document.getElementById("screen");
screen.innerHTML="分辨率:"+window.screen.height+"*"+window.screen.width+"<br>"+
"可用分辨率:"+window.screen.availHeight+"*"+window.screen.availWidth;
}
function myNavigator(){
var nav=document.getElementById("navigator");
nav.innerHTML="瀏覽器版本信息:"+window.navigator.userAgent;
}
/*警告框*/
function myAlert(){
window.alert("Alert Frame");
}
/*確認框*/
function myConfirm(){
var flag=window.confirm("Confirm Frame");
window.alert("show flag:"+flag);
}
/*提示框*/
function myPrompt(){
var flag=window.prompt("Prompt Frame","default value");
window.alert("show flag:"+flag);
}
/*使用setTimeOut動態(tài)獲取當(dāng)前系統(tǒng)時間*/
function mySetTimeOut(){
var date=new Date();
var h=date.getHours();
var m=date.getMinutes();
var s=date.getSeconds();
var current=h+":"+m+":"+s;
var span=document.getElementById("myspan");
span.innerHTML=current;
window.setTimeout(mySetTimeOut,1000);
}
var id;
/*使用setInterval制造流氓提示框*/
function mySetInterval(){
id=window.setInterval(function(){
alert("就是想看你滅不掉我的樣子");
},4000);
}
/*使用clearInterval關(guān)閉setInterval開啟的線程。clearTimeOut同。*/
function myClearInterval(){
alert(id);
window.clearInterval(id);
}
function myOpen(){
window.open("ad.html","son","height=200px,width=400px,top=200px,left=300px");
}
function myOpener(){
window.location.reload();
window.alert("頁面已刷新");
}
</script>
</head>
<body onload="mySetTimeOut();mySetInterval();myOpen();myScreen();myNavigator();">
<p>
<span id="screen">
</span>
</p>
<p>
<span id="navigator">
</span>
</p>
<p>
<input type="button" name="" id="" value="測試警告框" onclick="myAlert();" />
<input type="button" name="" id="" value="測試確認框" onclick="myConfirm();" />
<input type="button" name="" id="" value="測試提示框" onclick="myPrompt();" />
</p>
<p>
<input type="button" name="" id="" value="一鍵消滅流氓警告框" onclick="myClearInterval();" /><br />
</p>
<p>
<span id="myspan"></span>
</p>
</body>
</html>