找回密码
 立即注册

QQ登录

只需一步,快速开始

markgogo

注册会员

6

主题

16

帖子

44

积分

注册会员

积分
44
markgogo
注册会员   /  发表于:2020-6-8 16:28  /   查看:2458  /  回复:8
在浏览器中,我使用表格源码来在线编辑Excel。但是碰到如下问题:
用户习惯使用各种快捷键。例如按 ctrl+pageUp来切换sheet,但是在,浏览器拦截了这些快捷键。导致本意为切换SpreadJS的sheet,变成了切换浏览器不同的tap页面了。

求助~~~~~~~~~~~~~~~~~~~~~~~~~~

image.png17673949.png

8 个回复

倒序浏览
Fiooona
论坛元老   /  发表于:2020-6-8 18:54:48
沙发
SpreadJS中支持自定义快捷键,可以参考:https://demo.grapecity.com.cn/sp ... heet-actions/purejs
如果与浏览器中的冲突,需要在浏览器中设置禁用某快捷键
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
markgogo
注册会员   /  发表于:2020-6-8 19:36:00
板凳
在浏览器中设置禁用某快捷键?  如果直接全局事件中,将所有快捷键拦截,停止冒泡事件,Spreadjs也没办法接受到快捷键啊?
回复 使用道具 举报
markgogo
注册会员   /  发表于:2020-6-8 20:26:22
地板
我看API中有具体实现
https://demo.grapecity.com.cn/sp ... ntent/keyboard.html
但是,我并未测试成功,求助~~~

Ctrl+PageUp          NavigationPreviousSheet
Ctrl+PageDown         NavigationNextSheet
回复 使用道具 举报
markgogo
注册会员   /  发表于:2020-6-8 20:30:18
5#
找到具体问题了~
回复 使用道具 举报
markgogo
注册会员   /  发表于:2020-6-8 20:30:46
6#
全局重写快捷键~
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2020-6-8 23:07:49
7#
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
markgogo
注册会员   /  发表于:2020-6-9 08:55:07
8#
虽然找到原因,但是今天代码试验了一下,还是无效:
   if(event.ctrlKey == true && event.keyCode == 33) {//pageUp
                    alert(1);
                    designer.wrapper.spread.commandManager().execute({cmd: "NavigationPreviousSheet"});
                }

                if(event.ctrlKey == true && event.keyCode == 34) {//pageDown
                    alert(1);
                    designer.wrapper.spread.commandManager().execute({cmd: "NavigationPreviousSheet"});
                }

                event.returnValue=false;
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2020-6-9 17:19:24
9#
在设置中禁用浏览器快捷键:http://www.iefans.cn/dongtai/732.html
用代码禁用的方法暂时也没有找到合适的,除非让用户去设置自己的浏览器,暂时没有什么好的办法。
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部