|
|
@ -32,27 +32,35 @@ export default {
|
|
|
|
pasteCharts: 'pasteCharts'
|
|
|
|
pasteCharts: 'pasteCharts'
|
|
|
|
}),
|
|
|
|
}),
|
|
|
|
keydown (event) {
|
|
|
|
keydown (event) {
|
|
|
|
if (event.keyCode === 37) {
|
|
|
|
// 获取当前获得焦点的元素
|
|
|
|
// 关闭默认事件
|
|
|
|
const activeElement = document.activeElement
|
|
|
|
event.preventDefault()
|
|
|
|
// 判断当前获得焦点的元素是否是一个输入元素
|
|
|
|
// 左箭头键被按下
|
|
|
|
const isInputFocused = activeElement instanceof HTMLInputElement || activeElement instanceof HTMLTextAreaElement
|
|
|
|
this.changeActivePos({ diffX: -1, diffY: 0 })
|
|
|
|
if (!isInputFocused) {
|
|
|
|
} else if (event.keyCode === 38) {
|
|
|
|
// 当前页面没有输入聚焦
|
|
|
|
// 关闭默认事件
|
|
|
|
if (event.keyCode === 37) {
|
|
|
|
event.preventDefault()
|
|
|
|
// 关闭默认事件
|
|
|
|
// 上箭头键被按下
|
|
|
|
event.preventDefault()
|
|
|
|
this.changeActivePos({ diffX: 0, diffY: -1 })
|
|
|
|
// 左箭头键被按下
|
|
|
|
} else if (event.keyCode === 39) {
|
|
|
|
this.changeActivePos({ diffX: -1, diffY: 0 })
|
|
|
|
// 关闭默认事件
|
|
|
|
} else if (event.keyCode === 38) {
|
|
|
|
event.preventDefault()
|
|
|
|
// 关闭默认事件
|
|
|
|
// 右箭头键被按下
|
|
|
|
event.preventDefault()
|
|
|
|
this.changeActivePos({ diffX: 1, diffY: 0 })
|
|
|
|
// 上箭头键被按下
|
|
|
|
} else if (event.keyCode === 40) {
|
|
|
|
this.changeActivePos({ diffX: 0, diffY: -1 })
|
|
|
|
// 关闭默认事件
|
|
|
|
} else if (event.keyCode === 39) {
|
|
|
|
event.preventDefault()
|
|
|
|
// 关闭默认事件
|
|
|
|
// 下箭头键被按下
|
|
|
|
event.preventDefault()
|
|
|
|
this.changeActivePos({ diffX: 0, diffY: 1 })
|
|
|
|
// 右箭头键被按下
|
|
|
|
|
|
|
|
this.changeActivePos({ diffX: 1, diffY: 0 })
|
|
|
|
|
|
|
|
} else if (event.keyCode === 40) {
|
|
|
|
|
|
|
|
// 关闭默认事件
|
|
|
|
|
|
|
|
event.preventDefault()
|
|
|
|
|
|
|
|
// 下箭头键被按下
|
|
|
|
|
|
|
|
this.changeActivePos({ diffX: 0, diffY: 1 })
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// ctrl/command + s保存
|
|
|
|
// ctrl/command + s保存
|
|
|
|
if ((event.ctrlKey || event.metaKey) && event.keyCode === 83) {
|
|
|
|
if ((event.ctrlKey || event.metaKey) && event.keyCode === 83) {
|
|
|
|
// 关闭默认事件
|
|
|
|
// 关闭默认事件
|
|
|
|