首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用JS监听键盘事件

事件说明 我们将键盘事件的所有属性和方法打印出来(这里以1为例) document.onkeydown = function(event){ console.log(event)...; }  这里面有几个需要注意的属性 key:按键的名称 keyCode:按键的键码 altKey、ctrlKey、shiftKey:当组合(如ctrl+c)时,ctrlKey会变为...true 一、查看所有键 (获取event.key 的按键名称)(获取event.keyCode 的键码) document.onkeydown = function(event){...console.log(":"+event.key+"键:"+event.keyCode); } 下任意按键后的效果: 二、监听回车事件 这里以回车键(键码为13)为例 ,如果需要监听不同的按键...("下了回车键") } } 三、监听组合键 这里以CTRL+A为例 altKey:Alt+*组合键时为true ctrlKey:Ctrl+*组合键时为true shiftKey:

11.2K10

js鼠标事件

页面加载事件(onload),鼠标双击事件(ondbclick) window.onload=function(){                 //绑定元素,执行对应事件 鼠标双击(ondblclick...(){                     alert('我是双击显示的');                 }             } 鼠标(onmousedown)事件(摁就执行,鼠标无需抬起...)             window.onload=function(){                 //绑定元素,执行鼠标下操作  鼠标(onmousedown)                 ...}             } 鼠标抬起(onmouseup)事件(摁后,鼠标回弹才执行)             window.onload=function(){                 ...)区别:移动事件鼠标只要移动就产生事件,移入事件需要移入到指定的对象内才执行事件

18.2K40
您找到你想要的搜索结果了吗?
是的
没有找到

js鼠标事件

今天遇到一个非常奇怪而又搞笑的事情:给一个a标签添加一个鼠标移动上时给一个事件,我给其添加的是一个onMouseMove事件,结果在IE6 7 8 9和GOOLE中都很正常,结果在Firox中出现问题了...这是我遇到的第一个在firox中的兼容性问题,开始让我很苦恼,不知道什么原因,结果仔细查找,就是onMouseMove事件在日怪。当我给提添加onMouseOver事件时就对了。...鼠标的一些事件如下所示: onMouseOver IE3|N2|O3 当鼠标移动到某对象范围的上方时触发的事件 onMouseMove IE4|N4|O 鼠标移动时触发的事件 onMouseOut IE4...|N3|O3 当鼠标离开某对象范围时触发的事件 onKeyPress IE4|N4|O 当键盘上的某个键被并且释放时触发的事件....[注意:页面内必须有被聚焦的对象] onKeyDown IE4|N4|O 当键盘上某个按键被时触发的事件[注意:页面内必须有被聚焦的对象] onKeyUp IE4|N4|O 当键盘上某个按键被放开时触发的事件

13.6K30

双击事件(dblclick)时,不触发鼠标(mousedown) 动作事件

dblclick事件则会在mousedown、mouseup、click之后触发。 mouseover事件和mouseenter事件,都是鼠标进入一个节点时触发。...两者的区别是,mouseenter事件只触发一次,而只要鼠标在节点内部移动,mouseover事件会在子节点上触发多次。...在单击的时候(也就是鼠标的时候)不会执行双击,但是双击的时候会执行两次单击再执行双击事件。 解决的思路:要想双击时不执行单击事件,就使用定时器清除掉两个单击事件,留下一个双击事件。...index, item)"> handleMousedown(event, node, index) { clearTimeout(this.timeOut); // 清除第一个鼠标单击事件...(this.timeOut) console.log(event.target, 'handleDblclick'); }, 关于实现原理 在setTimeout 中的 time=200,大家知道js

49720

js 鼠标事件总结

当监听鼠标事件时,会触发一些事件,我们可以与之交互: mousedown 鼠标按钮触发 mouseup 鼠标按钮被释放 click 点击事件 dblclick 双击事件 mousemove 当鼠标移动到元素上时...button 如果有按钮,则为鼠标事件触发时的按钮数目(通常为0 =主按钮,1 =中按钮,2 =右按钮)。处理由单击按钮引起的事件(例如单击)。...buttons 按钮(如果有),表示在任何鼠标事件的按钮的数字。 clientX / clientY 无论是否滚动,鼠标指针相对于浏览器窗口的x和y坐标。...ctrlKey 如果在事件触发时ctrl键,则ctrlKey为真。 metaKey 如果事件触发时下了meta键,则metaKey true。...shiftKey 如果在触发事件shift键,则shiftKey为true。

9.1K40

【Android 事件分发】MotionEvent.ACTION_DOWN 事件分发流程( Activity | ViewGroup | View )

Android 事件分发 系列文章目录 【Android 事件分发】事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) 【Android...】事件分发源码分析 ( ViewGroup 事件传递机制 一 ) 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 二 ) 【Android 事件分发】事件分发源码分析...( ViewGroup 事件传递机制 三 ) 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 四 | View 事件传递机制 ) 【Android 事件分发】事件分发源码分析...( ViewGroup 事件传递机制 五 ) 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 六 ) 【Android 事件分发】事件分发源码分析 ( ViewGroup...源码分析 ( OnItemTouchListener 事件监听器源码分析 二 ) 【Android 事件分发】MotionEvent.ACTION_DOWN 事件分发流程( Activity |

1.6K20

JS-事件鼠标、键盘都能控制的下拉选框效果

event.cancelBubble = true; };//以上是阻止冒泡的判断语句 menu.style.display = "block"; //添加键盘事件...)和addEventListener(通用浏览器中添加事件监听器)。...二、 展开菜单之后,在document对象上绑定keyup事件,(键盘事件不是某个具体的对象了,所以要帮到document上面来)向下方向键,选中下一个选项,向上方向键,选中上一个选项,下回车键菜单收起...,显示选中项 提示: 1、 声明一个全局的index变量初值为-1 2、 向下方向键时index递增,当递增至大于等于菜单选项的总数时恢复为0 3、 向上方向键时判断index,如若小于等于0则设为菜单选项的总数...,下回车键不做任何操作 三、鼠标滑过每个选项时高亮显示,离开时去掉背景,点击高亮选项时菜单标题改变 提示: 1.遍历所有a标签,绑定鼠标点击的事件 注意:要考虑到浏览器兼容,使用innerHTML

3.2K50

js鼠标事件 clientX、clientY、offsetX、offsetY、layerX、layerY、pageX、 pageY、screenX、screenY「建议收藏」

MouseEvent的类别有以下: mousedown 鼠标 mouseup 鼠标释放 click 左键单击 dblclick 左键双击 mousemove 鼠标移动 mouseover 鼠标经过...mouseout 鼠标滑出 mouseenter 鼠标进入 mouseleave 鼠标离开 contextmenu 右键菜单 注意: 执行顺序:mousedown —> mouseup —> click...区别:mouseover和mouseout子元素也会触发,可以冒泡触发 区别:mouseenter和mouseleave是针对侦听的对象触发,阻止了冒泡 阻止鼠标的默认事件 e.preventDefault...() e.returnValue=false;//IE8 及以下兼容写法 return false;//IE兼容写法,只用作on事件阻止默认事件 去除单击右键菜单 document.body.addEventListener...左键对应的值为 0、1、1 中键对应的值为 1、4、2 右键对应的值为 2、2、3 timeStamp 从页面打开开始到触发事件的时间 以下内容为坐标值的说明: clientX和clientY与

2.5K20

Js篇-面试题9-请说一Js中的事件循环机制

JS 里的一种任务分类方式分为: 同步任务和异步任务 虽然 JS 是单线程的,但是浏览器的内核却是多线程的,在浏览器的内核中不同的异步操作由不同的浏览器内核模块调度执行,异步任务操作会将相关回调添加到任务队列中...处理的方式都不同 这些异步操作是由浏览器内核来执行的,浏览器内核上包含 3 种 webAPI,分别是 DOM Binding(DOM绑定)、network(网络请求)、timer(定时器)模块 按照这种分类方式:JS...的执行机制是 首先判断 js 代码是同步还是异步,不停的检查调用栈中是否有任务需要执行,如果没有,就检查任务队列,从中弹出一个任务,放入栈中,如此往复循环,要是同步就进入主进程,异步就进入事件表 异步任务在事件表中注册函数...,当满足触发条件后,被推入事件队列 同步任务进入主线程后一直执行,直到主线程空闲时,才会去事件队列中查看是否有可执行的异步任务,如果有就推入主进程中 以上三步循环执行,这就是事件循环(event loop...),它是连接任务队列和控制调用栈的 ---- 在面试当中事件循环机制问得也比较多,如果您有疑问,欢迎评论下方留言,一起学习探讨

1.1K10

手把手教你用 Python 实现浪漫表白程序

设置为 True 时,只要鼠标在窗口内移动时 mouseMoveEvent 事件就能捕获 设置为 False 时(默认),只有鼠标并在窗口内移动时 mouseMoveEvent 事件才能捕获 注意只能是...2.2 鼠标下调用 通过 n = event.button() 用来判断是哪个鼠标健触发了事件【返回值:0 1 2 4】。...其中: QtCore.Qt.NoButton - 0 - 没有鼠标键 QtCore.Qt.LeftButton -1 -鼠标左键 QtCore.Qt.RightButton -2 -鼠标右键...QtCore.Qt.Mion 或 QtCore.Qt.MiddleButton -4 -鼠标中键 通过 nn = event.buttons() 返回前面所列枚举值的组合,用于判断同时下了哪些键...2.3 鼠标松开 定义函数 mouseReleaseEvent,鼠标键释放时调用参数1:鼠标的作用对象;参数2:鼠标事件对象,用来保存鼠标数据。

1.6K30
领券