HTML页面中条形码或二维码扫描枪的使用

条形码或二维码扫描枪是一个输入工具,功能与键盘、鼠标相似,与键盘鼠标的区别是扫描枪从条形码或二维码中读取数据,键盘或鼠标需要手动录入数据。

一、使用扫描枪的常用场景是

1.使用扫描枪扫描录入数据,直接保存到后台系统

2.使用扫描枪扫描查询数据并显示出来

二、扫描枪在HTML页面中运用

1.在HTML中使用扫描枪必须有input或者其他输入框

2.在扫描枪进行扫描前,鼠标的焦点需要移动到相应的输入框中

3.扫描枪一般有自动带有enter键(在扫描完自动按下enter键)

三、扫描枪在页面中的使用设计

背景:页面中鼠标经常移动,不方便获取焦点,每一次扫描前需要移动,界面操作变得繁琐;为了解决此问题,以下设计,对使用扫描枪流程进行优化

1.页面加载是同时定位到需要输入框的并获取焦点,使用扫描枪直接即可录入数据

2.使用js监听键盘中的Ctrl键,按下Ctrl键,鼠标定位到需要输入框的并获取焦点

3.获取焦点同时,选择输入框的内容,如果输入框有内容,扫描枪录入数据直接覆盖之前的内容

4.监听输入框的值,扫描枪录入完毕,输入框值变化,同时触发将要执行的事件

5.事件执行完,鼠标重新定位到输入框,并选择输入框内容

四、运用例子

 <!DOCTYPE html>
 <html lang="en">
 <head>
 	<meta charset="UTF-8">
 	<title>键盘按键监听测试</title>
 </head>
 <body>
 	baody
 	<input name="name" placeholder="name" />
 	<input id='birthday' name="birthday" placeholder="birthday" />
 </body>
 </html>
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
	
	$("#birthday").focus();
	function keyDown(e){
		//IE内核浏览器
		 if (navigator.appName == 'Microsoft Internet Explorer'){
	           var keycode = event.keyCode;
	           var realkey = String.fromCharCode(event.keyCode);
	     }else {//非IE内核浏览器
	           var keycode = e.which;
	           var realkey = String.fromCharCode(e.which);
	     }
       // console.log('按键码:' + keycode +  '字符: ' + realkey);

       //监听Ctrl键
       if(keycode==17){
       		$("#birthday").focus();
       		$("#birthday").select();
       }
       $("#birthday").change(function(){
	       console.log($(this).val());
	       $("#birthday").select();
       })
     
	} 
	document.οnkeydοwn=keyDown;

</script>




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章