JavaScript-鼠標事件(鼠標點擊松開移動效果)


鼠標和鍵盤事件是在頁面操作中使用最頻繁的操作,可以利用鼠標事件在頁面中實現鼠標移動、單擊時的特殊效果,也可以利用鍵盤來制作頁面的快捷鍵等。

鼠標的單擊事件

單擊事件(onclick)是在鼠標單擊時被觸發的事件。單擊是指鼠標停留在對象上,按下鼠標鍵,在沒有移動鼠標的同時釋放鼠標鍵的這一完整過程。
單擊事件一般應用於 Button 對象、Checkbox 對象、Image 對象、Link 對象、Radio 對象、Reset對象和Submit對象,Button 對象一般只會用到 onclick事件處理程序,因為該對象不能從用戶那里得到任何信息,如果沒有onclick事件處理程序,按鈕對象將不會有任何作用。

注意:
在使用對象的單去事作時,如果在對象上按下鼠標健,然后移動鼠標到對象外再松開鼠標,單擊事件無效。單擊事件必須在對象上按下松開后,才會執行單擊事件的處理程序。
例子: 通過按鈕變換背景顏色。

本實例通過單擊“變換背景”按鈕,動態地改變頁面的背景顏色,當用戶再次單擊按鈕時,頁面背景將以不同的顏色進行顯示。

代碼如下:

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script language="JavaScript">
			var arraycolor=new Array("olive","teal","red","blue","maroon","navy");
			var n=0;
			function turncolors(){
				if(n==(arraycolor.length-1)) n=0;
				n++;
				document.bgColor=arraycolor[n];
			}
		</script>
	</head>
	<body>
		<input type="button" name="Submit" value="背景變色" onclick="turncolors()"/>
	</body>
</html>

演示效果:

 

鼠標的松開或按下事件

鼠標的按下或松開事件分別是onmousedown和onmouseup事件。其中,onmousedown事件用於在鼠標按下時觸發事件處理程序,onmouseup 事件是在鼠標松開時觸發事件處理程序。在用鼠標單擊對象時,可以用這兩個事件實現其動態效果。
例子:用事件制作超鏈接文本

本實例是用onmousedown和onmouseup事件將文本制作成類似於<a> (超鏈接)標記的功能,也就是在文本上按下鼠標時,改變文本的顏色,當在文本上松開鼠標時,恢復文本的默認顏色,井彈出一個空頁(可以鏈接任意網頁)。  運行結果如圖所示。
代碼:

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script language="JavaScript" type="text/javascript">
			function mousedown(event){  //設置鼠標按下時的顏色
				var e=window.event;
				var obj=e.srcElement;
				obj.style.color='red';
			}
			function mouseup(event){  //設置鼠標松開時的顏色
				var e=window.event;
				var obj=e.srcElement;
				obj.style.color='blue';
			}
		</script>
	</head>
	<body >
		<p style="color: green;" onmousedown="mousedown()" onmouseup="mouseup()">
			改變
		</p>	
	</body>
</html>

 

鼠標的移入/移出事件

 鼠標的移入和移出事件分別是onmouseover和onmouseout事件。其中,onmouseover 事件在鼠標移動到對象上方時觸發事件處理程序,onmouseout事件在鼠標移出對象上方時觸發事件處理程序。可以用這兩個事件實現在指定的對象上移動鼠標時,其對象的動態效果。

 鼠標移動事件

鼠標移動事件(onmousemove) 是鼠標在頁面上進行移動時觸發事件處理程序,可以在該事件中用document對象實時讀取鼠標在頁面中的位置。
例子:在狀態欄中顯示鼠標在頁面中的當前位置

本實例是鼠標在頁面中移動時,在頁面的狀態欄中顯示當前鼠標在頁面上的位置,也就是(x,y)值。

代碼:

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<script type="text/javascript">
		var x=0;y=0;
		function mouseplace(){
			x=window.event.x;
			y=window.event.y;
			window.status="X: "+x+"   Y: "+y+"  ";
		}
		document.onmousemove=mouseplace();  //讀取鼠標在頁面中的位置
	</script>
	<body>
	</body>
</html>

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM