文档章节

页面按钮支持键盘快捷键替代

streamlong
 streamlong
发布于 2017/04/28 17:30
字数 305
阅读 26
收藏 0
点赞 0
评论 0

JSP界面:

<button type="button"  onkeydown="keyDown();"  onclick="resetForm();" >重置(ctrl+z)</button>

JS代码:

//判断是否是IE浏览器 
var ie = (document.all) ? true : false;
//设置页面快捷键 
function keyDown(e){  
  if(ie){
         //IE浏览器    
         if(e.ctrlKey && e.keyCode == 90){//重置按钮     ctrl+z
               event.keyCode=0;      
               event.returnValue=false;      
               resetForm();    
          } else if(e.ctrlKey && e.keyCode == 80){//打印按钮   ctrl+p
               event.keyCode=0;      
               event.returnValue=false;      
               printForm();    
          } else if(e.keyCode == 34) {//保持按钮    enter改成page down 
               formSubmit();
          }    
  } else {    
          //非IE浏览器    
          if(e.ctrlKey && e.keyCode == 90){//重置按钮     ctrl+z
               event.keyCode=0;      
               event.returnValue=false;      
               resetForm();    
               return false;
          } else if(e.keyCode == 80){//打印按钮   ctrl+p
              event.keyCode=0;      
              event.returnValue=false;      
              printForm();    
              return false;
          } else if(e.keyCode == 34) {//保持按钮    enter改成page down  
              formSubmit();
              return false;
         }  
    }
}
 document.onkeydown=keyDown;            

这一步是为了阻止外接设备扫描完成后,会自动触发enter键提交的问题

//键码获取
$(document).keyup(function (event) {
	if(event.keyCode == 13) {
	      event.preventDefault();
	};
 }); 

这一步是在页面初始化的时候,文本框自动聚焦光标

 $(document).ready(function() {
        setTimeout(function(){//采用这种方式聚焦光标,是因为初始化页面时,项目框架自带的请求进度滚动条覆盖了聚焦文本框的光标
        	$("#expressNo").focus();
        },1500);
            
      $("#expressNo").on("change", function() {
           var inputs = $("input[id^=tscode]");
           for(var i = 0; i < inputs.length ; i++) {
                var input = inputs[i];
                if(input.value == null || input.value == "") {
                      input.focus();
                      break;
                 }
            }
      });
 });
        

© 著作权归作者所有

共有 人打赏支持
streamlong

streamlong

粉丝 22
博文 27
码字总数 16725
作品 0
杭州
这些ABBYY FineReader中的小技巧你了解不?

  使用ABBYY FineReader 12 OCR文字识别软件工作即快速又简单,软件自身常常可以自行处理一切工作,用户只需点击几下软件中的‘主要’按钮。不过,有时要想获得更好的质量结果,或 者解决某...

ABBYY ⋅ 2016/04/27 ⋅ 0

windows 10常用快捷键汇总

win10快捷键大全大家可以来了解一下,今天小编带来了win10常用快捷键,很多朋友喜欢使用快捷键来操作电脑,那么Windows10系统有哪些新的快捷键呢 • 贴靠窗口:Win +左/右> Win +上/下>窗口可...

三极行者 ⋅ 05/21 ⋅ 0

在几何画板中如何制作滚动按钮

在使用几何画板的过程中,很多的用户朋友都遇到过页面中内容较多,无法全部显示等情况,面对这种情况我们可以通过“滚动”按钮控制显示内容在屏幕内滚动。下面我们就来给大家介绍介绍几何画板...

学术研究软件 ⋅ 2016/04/08 ⋅ 0

20 款处理键盘事件的 JavaScript 库

键盘事件可以提高网站的易用性,提高用户与网站的交互体验,或者是页面需要通过键盘输入来触发事件。这些都非常有必要使用快捷键或者是键盘输入条目。 将这些事件处理整合到 HTML 文档中,通...

oschina ⋅ 2014/03/05 ⋅ 15

开源速记引擎--Plover-OpenSten

Plover,是一个开源的速记引擎。它允许个人替代他们的键盘并以超过每分钟200字的速度写入任何程序。 特性: Plover 不是你常规的速记软件,它包含了许多使它成为一个优秀的键盘替代品的特性。...

匿名 ⋅ 2016/10/23 ⋅ 1

如何给文件对比工具自定义快捷键

Beyond Compare是目前应用非常广泛的一款文件和文件夹比较工具,但是也有少部分用户觉得软件用起来有些不顺手,执行一次比较会话操作要花费好长时间,其实主要是因为没有学会使用快捷键。现在...

Navicat数据库管理工具 ⋅ 2016/11/02 ⋅ 0

1.4 Illustrator的三种屏幕模式

本节课将为您演示系统的三种屏幕模式,您可以根据工作需要,选择合适的屏幕模式。当前的屏幕模式为正常屏幕模式。点击工具箱最下方的[更改屏幕模式]按钮。 在弹出的选项列表中,选择[带有菜单...

fzhlee ⋅ 04/08 ⋅ 0

​WinHotKey 工具使用笔记

一、WinHotKey 简介 WinHotKey 是一个管理 Windows 系统热键的工具。支持自定义新的热键,功能虽没有 AutoHotKey 工具强大,但易学易用。WinHotKey 的下载地址: http://www.softpedia.com/g...

北风其凉 ⋅ 2016/04/23 ⋅ 0

软件测试面试之如何测试网页的登录页面

软件测试面试之如何测试网页的登录页面 具体需求: 有一个登陆页面, 上面有2个textbox, 一个提交按钮。 请针对这个页面设计30个以上的test case。 此题的考察目的: 面试者是否熟悉各种测试...

zq张蔷 ⋅ 2017/05/03 ⋅ 0

Selenium2+python自动化12-操作元素(键盘和鼠标事件)

前言 本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 一、简单操作 1.点击(鼠标左键)页面按钮:click() 2.请空输入框:clear() 3.输入字符串:send_keys() 4.打开测试部落论...

上海-悠悠 ⋅ 2016/12/03 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Centos7重置Mysql 8.0.1 root 密码

问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1...

豆花饭烧土豆 ⋅ 今天 ⋅ 0

熊掌号收录比例对于网站原创数据排名的影响[图]

从去年下半年开始,我在写博客了,因为我觉得业余写写博客也还是很不错的,但是从2017年下半年开始,百度已经推出了原创保护功能和熊掌号平台,为此,我也提交了不少以前的老数据,而这些历史...

原创小博客 ⋅ 今天 ⋅ 0

LVM讲解、磁盘故障小案例

LVM LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。 1.新建分区,更改类型为8e 即L...

蛋黄Yolks ⋅ 今天 ⋅ 0

Hadoop Yarn调度器的选择和使用

一、引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色。在讨论其构造器之前先简单了解一下Yarn的架构。 上图是Yarn的基本架构,其中ResourceManager是整个架构的核心组件,它负...

p柯西 ⋅ 今天 ⋅ 0

uWSGI + Django @ Ubuntu

创建 Django App Project 创建后, 可以看到路径下有一个wsgi.py的问题 uWSGI运行 直接命令行运行 利用如下命令, 可直接访问 uwsgi --http :8080 --wsgi-file dj/wsgi.py 配置文件 & 运行 [u...

袁祾 ⋅ 今天 ⋅ 0

JVM堆的理解

在JVM中,我们经常提到的就是堆了,堆确实很重要,其实,除了堆之外,还有几个重要的模块,看下图: 大 多数情况下,我们并不需要关心JVM的底层,但是如果了解它的话,对于我们系统调优是非常...

不羁之后 ⋅ 昨天 ⋅ 0

推荐:并发情况下:Java HashMap 形成死循环的原因

在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历...

码代码的小司机 ⋅ 昨天 ⋅ 2

聊聊spring cloud gateway的RetryGatewayFilter

序 本文主要研究一下spring cloud gateway的RetryGatewayFilter GatewayAutoConfiguration spring-cloud-gateway-core-2.0.0.RC2-sources.jar!/org/springframework/cloud/gateway/config/G......

go4it ⋅ 昨天 ⋅ 0

创建新用户和授予MySQL中的权限教程

导读 MySQL是一个开源数据库管理软件,可帮助用户存储,组织和以后检索数据。 它有多种选项来授予特定用户在表和数据库中的细微的权限 - 本教程将简要介绍一些选项。 如何创建新用户 在MySQL...

问题终结者 ⋅ 昨天 ⋅ 0

android -------- 颜色的半透明效果配置

最近有朋友问我 Android 背景颜色的半透明效果配置,我网上看资料,总结了一下, 开发中也是常常遇到的,所以来写篇博客 常用的颜色值格式有: RGB ARGB RRGGBB AARRGGBB 这4种 透明度 透明度...

切切歆语 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部