什么是BOM疏橄?
window
window是瀏覽器的一個實例闰集,在瀏覽器中桨螺,window對象有雙重角色恰梢,它既是通過JavaScript訪問瀏覽器窗口的一個接口佛南,有是ECMAScript規(guī)定的Global對象
Global對象 --> 全局對象
Window對象的方法
01
語法window.alert("content");
功能顯示帶有一段消息和一個確認按鈕的警告框
02
語法:window.confirm("message")
功能:顯示一個帶有指定消息和OK與取消按鈕的對話框
03
語法:window.prompt("text,defaultText")
參數(shù)說明:
text:純文本
defaultText:默認輸入文本(可不填)
返回值:如果用戶點擊提示框取消按鈕,則返回null
如果用戶單擊確認按鈕嵌言,則返回輸入字段當前顯示文本
04
語法window.open(pageURL,name,parameyers);
功能:打開一個新的瀏覽器窗口或查找一個已命名的窗口嗅回。
參數(shù):
pageURL:子窗口路徑
name:子窗口句柄(name聲明了新窗口的名稱,方便后期通過name對子窗口進行引用)
parameters:窗口參數(shù)(各參數(shù)用逗號隔開)
05
語法:window.close()
功能:關(guān)閉當前瀏覽器窗口
定時器
注釋:JS是單線程語言摧茴,單線程就是所有執(zhí)行代碼必須按照順序執(zhí)行
01.超時調(diào)用
語法:setTimeout(code,millisec)
功能:在指定的毫秒數(shù)后調(diào)用函數(shù)或計算表達式
參數(shù)說明:
1.code:要調(diào)用的函數(shù)或要執(zhí)行的JS代碼串
2.millisec:執(zhí)行代碼前等待的毫秒數(shù)
02.清除超時調(diào)用
語法:clearTimeout(id_of_settimeout)
功能:取消setTimeout()方法設(shè)置的timeout
參數(shù)說明:
1.id_of_settTiemout:由setTimeout()返回的ID值绵载,改值標識要取消的延遲執(zhí)行代碼快
提示:setTimeout() 只執(zhí)行 code 一次。如果要多次調(diào)用苛白,請使用 setInterval() 或者讓 code 自身再次調(diào)用 setTimeout()尘分。
間隔調(diào)用
01語法:setInterval(code,millisec)
功能:每隔指定時間執(zhí)行一次代碼
參數(shù)說明:
1.code:代碼
2.millisec:周期執(zhí)行or調(diào)用code間隔,以毫秒計算
02語法:clearInterval()
功能:結(jié)束間隔調(diào)用
03Location對象常用屬性
01
語法:location.href
功能:返回當前加載頁面完整的URL
說明:location.href與window.location.href等價
02
語法:location.hash //(獲取錨點#)
功能:返回URL中的hash(#號后跟零或多個字符)丸氛,如果不包含返回空中飛車
03
語法:location.host
功能:返回服務(wù)器名稱和端口號(如果有)
04
語法:location.houstname
功能:返回不帶端口號的服務(wù)器名稱
05
語法:location.pathname
功能:返回URL中的目錄和(或)文件名
06
語法:location.port
功能:返回指定URL中指定的端口號培愁,如果沒有,返回空字符串
07
語法:location.protocol
功能:返回頁面使用協(xié)議
08
語法:location.search
功能:返回URL的查詢字符串缓窜。這個字符串以問好開頭
09
語法:location.replace(url)
功能:重新定義URL
說明:不會在歷史記錄中生成新記錄
10
語法:location.reload()
功能:重新加載當前頁面
說明:
location.reload() 重緩存中加載
location.reload(true)重服務(wù)器中重新請求頁面
history對象
保存用戶在瀏覽器上的訪問頁面歷史記錄
01
語法:history.back()
功能:回到歷史記錄上一步
說明:相當于使用了history.go(-1)
02
語法:history.forward()
功能:回到歷史紀錄的下一步
說明:相當于使用了history.go(1)
03
語法history.go(-n)
功能:回到歷史記錄的前N步
語法history.go(n)
回到歷史紀錄的后n步
Navigator對象(OS)
UserAgent:用來識別瀏覽器名稱定续,版本谍咆,引擎,and私股,OS等信息
Screen
包含客戶端顯示屏幕信息
01.語法screen.availWidth
返回可用屏幕寬度
02語法screen.availHeight
返回可用屏幕高度
<body>
<div id="box">
Google大法
<input type="submit" value="刪 除" id="subMT"/>
</div>
<script type="text/javascript">
var get_subMT = document.getElementById('subMT');
get_subMT.onclick=function(){
var get_box = document.getElementById('box');
var c = confirm("你確定要刪除嗎摹察?");
// console.log(c);
if(c==true){
box.style.display='none';
}else{
var sd=prompt("輸入修改這里的內(nèi)容");
box.innerHTML=sd;
}
}
</script>
</body>
<script type="text/javascript">
window.onload=function(){
window.open("https://www.google.com","Google",'heigth:450px,width:450px,left:450px,top:450px,toolbar=no,menubar=no,scrollbars:no,location:no,status:no');
}
</script>
<script type="text/javascript">
window.onload=function(){
var stime=setTimeout(function(){setTimeout(console.log("STEtimeout")},1000 );
setTimeout(function(){clearTimeout(stime)},5000);
}
</script>
<script type="text/javascript">
var c=setInterval(function(){console.log("hello")},1000);
clearInterval(c);
</script>
<body>
<input type="button" name="" id="but" value="BU KK" style="background: aquamarine;"/>
<script type="text/javascript">
var get_but=document.getElementById('but');
get_but.onclick=function(){
sq = confirm("是否刷新頁面");
if(sq == true){
location.reload();
}else{
location.replace('https://www.adapa.online');
}
}
</script>
</body>
<script type="text/javascript">
//檢查瀏覽器類型
function getBrowser(){
var explorer = navigator.userAgent.toLowerCase();
if(explorer.indexOf('msie')>-1){
browser = 'IE';
}else if(explorer.indexOf('chrome')>-1){
browser = 'chrome';
}else if(explorer.indexOf('opera')>1){
browser = 'opera';
}else if(explorer.indexOf('safari')>1){
browser = 'safari';
}
return browser;
}
var explorer = getBrowser();
alert(explorer);
</script>