122-----JS基础-----键盘事件

一 代码

很简单。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			window.onload = function(){
      
      
				
				/*
				 * 1. 键盘事件:
				 * 	onkeydown
				 * 		- 按键被按下
				 * 		- 对于onkeydown来说如果一直按着某个按键不松手,则事件会一直触发
				 * 		- 当onkeydown连续触发时,第一次和第二次之间会间隔稍微长一点,其他的会非常的快
				 * 			这种设计是为了防止误操作的发生。
				 * 	onkeyup
				 * 		- 按键被松开
				 * 
				 *  2. 键盘事件一般都会绑定给一些可以获取到焦点的对象或者是document.
				 * 		焦点是指用户可以输入字符的元素,例如文本框。
				 */
				
				document.onkeydown = function(event){
      
      
					event = event || window.event;
					
					/*
					 * 3. 可以通过keyCode来获取按键的编码
					 * 	通过它可以判断哪个按键被按下
					 * 除了keyCode,事件对象中还提供了几个属性
					 * 	altKey
					 * 	ctrlKey
					 * 	shiftKey
					 * 		- 这个三个用来判断alt ctrl 和 shift是否被按下
					 * 			如果按下则返回true,否则返回false
					 */
					
					//console.log(event.keyCode);
					
					//判断一个y是否被按下
					// 4. 判断y和ctrl是否同时被按下
					if(event.keyCode === 89 && event.ctrlKey){
      
      
						console.log("ctrl和y都被按下了");
					}
					
					
				};
				
				/*document.onkeyup = function(){
					console.log("按键松开了");
				};*/
				
				//获取input
				var input = document.getElementsByTagName("input")[0];
				
				input.onkeydown = function(event){
      
      
					
					event = event || window.event;
					
					//console.log(event.keyCode);
					//数字 48 - 57
					//使文本框中不能输入数字
					if(event.keyCode >= 48 && event.keyCode <= 57){
      
      
						// 5. 在文本框中输入内容,属于onkeydown的默认行为
						//如果在onkeydown中取消了默认行为,则输入的内容,不会出现在文本框中
						return false;
					}
					
					
				};
			};
			
			
		</script>
	</head>
	<body>
		
		<input type="text" />
		
	</body>
</html>

Guess you like

Origin blog.csdn.net/weixin_44517656/article/details/121503302