一种键盘与浏览器表格的交互方法及其交互装置的制造方法【
技术领域:
】[0001]本发明涉及数据库领域,特别涉及一种键盘与浏览器表格的交互方法和交互装置。【
背景技术:
】[0002]目前,大部分桌面程序,特别是表格程序等已逐渐向浏览器平台迁移,浏览器平台具备以下优势:(1)跨操作系统,无论MAC、linuX,还是windows系统,全部都具备浏览器,并且都遵循W3C的规范,基本页面代码都可兼容主流浏览器;(2)用户不需额外安装,直接用浏览器就可以登录。[0003]但是,浏览器程序有一个非常明显缺点,即快捷键支持差。这对于习惯用桌面程序进行全键盘表格录入的用户来说,是非常不便的。因此,现在需要提供一种能够在浏览器上实现像桌面程序一样的表格键盘操作的方法和装置。【
发明内容】[0004]本发明的目的在于克服现有技术的缺点与不足,提供一种键盘与浏览器表格的交互方法。[0005]本发明是通过以下技术方案实现的:一种键盘与浏览器表格的交互方法,包括以下步骤:[0006]预先制定键盘上的快捷键;[0007]将焦点设置在表格上,通过监听快捷键,对单元格进行定位;[0008]进入单元格编辑器,对当前单元格进行编辑。[0009]相比于现有技术,本发明通过在制定相应的快捷键,实现键盘和浏览器表格的交互。其中,由于传统浏览器上的单元格在没有获得焦点时,是无法调用中文输入法,交互方式与桌面程序有一定差异。因此,本发明通过将焦点保持在表格上,然后再通过监听快捷键,来决定单元格位置的定位。通过本发明实现了在浏览器平台支持凭证表格全键盘录入的操作,从而提升用户录入的流畅性,从而大大提高操作效率。[0010]作为本发明的进一步改进,在进入单元格编辑器之前,先对当前单元格进行判断;若当前单元格可编辑,则动态产生一个控件,并嵌入单元格中。[0011]作为本发明的进一步改进,对当前单元格进行编辑时,包括以下步骤:[0012]对与当前单元格编辑器无关的快捷键进行过滤;[0013]输入文本数值信息或进行快捷键操作。[0014]由于表格本身的快捷键可能会跟单元格里面的编辑控件冲突,故在本发明中通过过滤掉无关的快捷键事件,防止造成浏览器的快捷键的冲突。[0015]作为本发明的进一步改进,当根据输入的信息,通过下拉框将选项进行显示。由于脚本的执行以及UI的刷新是互斥的,如果创建控件的事件过程或者获取数据的请求时间过长,则会出现界面长时间卡顿问题,造成快捷键操作上的停顿,而不够流畅。因此可以通过懒加载的方式,通过控件的弹出框或者下拉层来获取相应的选项和内容。从而,实现在切换单元格和渲染控件时,增加显示的速度。[0016]作为本发明的进一步改进,还包括步骤:当对单元格切换时,将没有使用的控件在内存中释放。在浏览器中,由于单元格在不断的创建编辑器以及销毁的过程中,可能存在内存泄露。因此,需要再单元格的切换过程中,将没有使用的控件进行释放,防止其占有内存空间。[0017]本发明还提供了用于实现上述交互方法的键盘和浏览器表格的交互装置,包括:[0018]焦点监测单元,其用于监测焦点的位置;[0019]快捷键监测单元,其用于监测快捷键的信息,对单元格进行定位;[0020]信息编辑单元,其用于定位的单元格进行编辑。[0021]作为本发明的进一步改进,还包括过滤单元;当信息编辑单元对单元格进行编辑时,通过所述过滤单元将与该信息编辑单元无关的快捷键进行过滤。[0022]作为本发明的进一步改进,还包括判断单元,其用于对当前单元格是否可编辑进行判断;若当前单元格可编辑,则动态产生一个控件,并嵌入单元格中。[0023]作为本发明的进一步改进,还包括选项显示单元,其用于显示数据选项;所述选项显示单元通过弹出框或下拉框的方式显示相应的数据选项。[0024]作为本发明的进一步改进,还包括一内存释放单元,用于将没有进行使用的控件在内存中进行释放。[0025]以下结合说明书附图对本发明的火花塞进行详细说明。【附图说明】[0026]图1是本发明的键盘与浏览器表格的交互方法的流程图。[0027]图2是本发明的键盘与浏览器表格的交互装置示意图。【具体实施方式】[0028]请参阅图1,其为本发明的键盘与浏览器表格的交互方法的流程图。本发明的键盘与浏览器表格的交互方法,包括以下步骤:[0029]S1:预先制定键盘上的快捷键。在本实施例中,键盘与浏览器表格的交互的包括以下快捷键:[0030]【F2键】:单元格在进入编辑状态后,点击F2键,打开单元格中的相应控件,包括日历控件、浏览按钮控件和下拉列表控件。[0031]【上下左右方向键】:在表格单元格间上下左右移动,到达最后一个单元格时不生效。[0032]【Ctrl+上下左右方向键】:在单元格字符间上下左右移动,到达最后一个字符时不生效。[0033]【Enter键】:①完成单元格输入,并向右移动一个单元格,到达最右一个单元格时,跳转到下一行的第一个单元格。②在金额单元格完成录入后,按下【Enter键】,如果相应科目有绑定“辅助信息”,则弹出辅助信息录入界面。③在科目单元格完成录入后,按下【Enter键】,如果相应科目有绑定子项目,则弹出子项目选择界面。[0034][Shift+Enter键】:向左移动一个单元格,到达最后一个单元格时,跳转到上一行的最后一个单元格。[0035][Tab键】:向右移动到一个单元格,到达最右一个单元格时,跳转到下一行的第一个单元格。[0036][Shift+Tab键】:同【Shift+Enter键】。[0037]【Delete键】或【Backspace键】:单击可删除单元格中的一个字符,长按可连续删除。[0038]【Ctrl+Enter键】:将焦点切换到界面中的下一个表格,支持循环切换。[0039]S2:将焦点设置在表格上。[0040]在本实施例中,所述焦点为当前光标被激活的位置,是哪个控件被选中,可以被操作。浏览器的快捷键监听是需要基于焦点,因此即是具有该焦点的控件以及其父层次才有资格拿到该快捷键的事件。那么对于表格来说,需要把焦点保持在表格本身,然后再通过监听快捷键,来决定单元格位置的定位。比如一个文本框控件获得焦点,可以在键盘上进行文本框文本或数值编辑;或者一个下拉式列表框获得焦点,可以通过键盘的向下箭头,以列表显示出来选项。[0041]具体的,在本实施例中,可以通过【Ctrl+Enter键】将焦点切换到界面中的下一个表格,且支持循环切换。具体的切换过程为:当具有焦点的表格监听到Ctrl+Enter的组合键,则通过表格顺序索引查找下一个表格,并将焦点移至下一个表格。[0042]S3:对单元格进行定位。[0043]在本实施例中,所述单元格的定位需要模拟获取焦点的样子,实际上焦点还是在表格上,只是给单元格修改样式,让其看起来是有焦点的样子。若表格在非编辑的情况下,需要将焦点一直保持在表格本身,也就是〈table〉标签上。如果表格丢失了焦点,则无法通过快捷点来定位单元格。[0044]S4:先对当前单元格进行判断,若当前单元格可编辑,则动态产生一个控件,并嵌入单元格中。比如:当通过鼠标点击单元格,事件会冒泡到单元格所在的表格,然后表格会根据单元格是否可以进行编辑的配置信息,觉得当前单元格是否可以进入编辑模式。如果判断可以进行编辑,则动态产生出一个控件,并嵌入到当前单元格中。[0045]S5:进入单元格编辑器,对当前单元格进行编辑。[0046]S6:对与当前单元格编辑器无关的快捷键进行过滤。在单元格编辑的情况下,由于当前的单元格编辑器可能当前第1页1 2