1. 程式人生 > >Day2-Window物件

Day2-Window物件

Day2-Window物件


window物件的常用屬性

screen:有關客戶端的螢幕和顯示效能的資訊。
history:有關客戶訪問過的url的資訊
location:有關當前url的資訊


window物件的常用方法


prompt:現實可提示使用者輸入的對話方塊
例:prompt("你是大豬蹄子嗎?","是的");
效果:
在這裡插入圖片描述
其輸入框內容可通過宣告變數接收。

var tip = prompt("你是大豬蹄子嗎?","是的");
document.write(tip);

tip為文字框輸入內容。


alert:顯示帶有一個提示資訊和一個確定按鈕的警示框


例:alert("男人都是大豬蹄子!!!");
效果:
在這裡插入圖片描述
alert中的內容可以是變數,也可以是常量


confirm:顯示一個帶有提示資訊、確定和取消按鈕的對話方塊
例:confirm("你確定你是大豬蹄子嗎?");
效果:
在這裡插入圖片描述
當點選“確定”時,返回Ture值,當點選“取消”時,返回False。

var bool = confirm("你確定你是大豬蹄子嗎?");

close:關閉當前頁面

close();

可直接定義,關閉當前頁面。加在JS中可能會被瀏覽器攔截;


open:開啟一個頁面

open("要開啟的url地址","網頁名稱","視窗特徵"
) open("https://www.baidu.com/","百度","width=500,height=100");

可直接定義。開啟一個新的頁面。


setTimeout:在指定毫秒後呼叫函式或計算表示式
例:setTimeout(close,5000); //在5000毫秒(即5秒)後,執行close方法


setInterval:按照指定的週期(以毫秒計)來呼叫函式或表示式
例:

setInterval(function(){
	if(count == 0){
		document.write("再見了,大豬蹄子!!!");
	}else{
		document.write("<br />"
+count+"秒後自動關閉<br />"); count--; } },1000); //每隔1000毫秒(即1秒)執行一次function

clearInterval(定時器):清除已定義的定時器
例:

var time = setInterval(open(),1000);
clearInterval(time); //清除上面定義的time定時器


window物件的常用事件


onload: 當頁面載入到onload時,執行一個方法
例:

JS程式碼

function load(){
	alert("這可能是個廣告,也有可能不是~");
}

HTML程式碼

<body onload="load()">
</body>

當頁面載入完成,則執行load()方法中的alert()方法。
效果:
在這裡插入圖片描述


onClick:滑鼠點選事件
當滑鼠點選某個元素時,觸發事件

HTML程式碼

<input type="button" value="點選" onClick="click()" />

js程式碼

function click(){
	alert("點選提示");
}

onmouseover:當滑鼠移到某元素上觸發事件
onmouseout:當滑鼠移出某元素觸發事件
onmouserdown:當滑鼠按下時觸發事件
onmouseup:當滑鼠鬆開時出發事件
例:

js程式碼

function changes(x){
	var d = document.getElementById("d");
	switch(x){
		case 1:
			d.style.backgroundColor = "red";
			break;
		case 2:
			d.style.backgroundColor = "yellow";
			break;
		case 3:
			d.style.backgroundColor = "blue";
			break;
		case 4:
			d.style.backgroundColor = "green";
			break;
	}
}

HTML程式碼

<div id="d" style="width:100px;height:100px;border:1px solid #000;" onmousemove="changes(1)" onmouseout="changes(2)" onmousedown="changes(3)" onmouseup="changes(4)">
</div>

效果一覽:
移入(紅色)          移出(黃色)         按住(藍色)        鬆開(綠色)
在這裡插入圖片描述在這裡插入圖片描述在這裡插入圖片描述在這裡插入圖片描述


onmousemove:滑鼠在某元素內移動,則觸發事件

與onmouseover的區別:onmouseover是在移入時只會觸發一次,而onmousemove會在元素內移動觸發多次;

js程式碼

var count = 0;
function move(){
 	var move = document.getElementById("move");
 	move.value = count++;
}
function over(){
 	var over = document.getElementById("over");
 	over.value = count++;
 }

HTML程式碼

<div style="width:300px;height:100px;border:1px solid red;" onmousemove="move()">
	move:<input id="move" type="text"/>
</div>
<div style="width:300px;height:100px;border:1px solid red;" onmouseover="over()">
	over:<input id="over" type="text"/>
</div>

效果:
在這裡插入圖片描述
在上面的紅框中移動,數字會自增;
在下面的紅框中,必須要將滑鼠移出紅框範圍,在移入紅框範圍,才會自增;


onmouseenter:滑鼠在移入某一元素,則觸發事件
onmouseleave:滑鼠在移出某一元素,則觸發事件
用法和onmouseover和onmouseout一致
區別:
onmouseover和onmouseout作為父元素的事件,會傳遞給子元素;
onmouseenter和onmouseleave作為父元素的事件,不會傳遞給子元素;
例:

JS程式碼

function enter(){
 	var onmouse = document.getElementById("onmouse");
 	onmouse.value = "enter";
 }
function leave(){
 	var onmouse = document.getElementById("onmouse");
 	onmouse.value = "leave";
 }
function eover(){
 	var onmouse = document.getElementById("onmouse");
 	onmouse.value = "eover";
 }
function eout(){
 	var onmouse = document.getElementById("onmouse");
 	onmouse.value = "eout";
 }

HTML程式碼

<input type="text" id="onmouse">
<div onmouseenter="enter()" onmouseleave="leave()" style="outline:1px solid red;width:200px;height:200px;">
	<div onmouseover="eover()" onmouseout="eout()" style="outline:1px solid red;width:100px;height:100px;">
	</div>
</div>

HTML程式碼

<input type="text" id="onmouse">
<div onmouseover="eover()" onmouseout="eout()" style="outline:1px solid red;width:200px;height:200px;">
	<div onmouseenter="enter()" onmouseleave="leave()" style="outline:1px solid red;width:100px;height:100px;">
	</div>
</div>

效果:太難截圖了。不截了。


onkeydown:當鍵盤按鍵按下時觸發事件

JS程式碼

function keyDown(){
	alert("已按");
 }

HTML程式碼

<input onkeydown="keyDown()" type="text" name = "username" />

效果:
在這裡插入圖片描述
在這裡插入圖片描述
當在輸入框中按下鍵盤上的任意鍵,觸發事件彈出警示框。


onchange:域的內容被改變
當元素的作用域的內容發生改變時,觸發事件

JS程式碼

function Change(){
	alert("值發生了改變");
 }

HTML程式碼

<input  onchange="Change()" type="text" name = "username" />

效果:
在這裡插入圖片描述
在這裡插入圖片描述
當q變成q2時,觸發事件彈出警示框。