V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
soooulp
V2EX  ›  问与答

按键后如何获取鼠标位置,不用鼠标点击或者鼠标移动事件?

  •  
  •   soooulp · 2020-06-07 12:26:21 +08:00 · 1165 次点击
    这是一个创建于 1629 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想在页面按键后获取鼠标位置,不知道如何在不使用鼠标移动或者点击事件的情况下获取

    document.addEventListener('keydown',function(event)
    

    尝试用鼠标移动事件后,获取了鼠标位置,但是在开发者工具中,会提示多次按键和鼠标位置信息

    document.addEventListener("mousemove",function(e)
    

    如何在按键后获取鼠标位置,不用鼠标点击或者鼠标移动事件,或者使用鼠标移动事件,只显示一次按键信息和鼠标位置信息?

    会用手势调用按键快捷键,如果显示按键后的鼠标位置坐标,是不是可以在手势结束后,只显示一次最后鼠标位置坐标

    document.addEventListener("mousemove",function(e){
        document.addEventListener('keydown',function(event){
            var keynum;
            if(window.event) // IE
            {
                keynum = event.keyCode;
            }
            else if(event.which) // Netscape/Firefox/Opera
            {
                keynum = event.which;
            }
            console.log(event.keyCode)
    
            if(keynum==79&&event.altKey){
              console.log(e.pageX+","+e.pageY)
            }
        });
    });
    

    7b3dd3c565925f6a7fa3e798d2690622.tiff

    1 条回复    2020-06-07 13:10:45 +08:00
    soooulp
        1
    soooulp  
    OP
       2020-06-07 13:10:45 +08:00
    解决了

    [segmentfault.com/q/1010000022862020]( https://segmentfault.com/q/1010000022862020 "segmentfault.com/q/1010000022862020")


    ```javascript
    let mouseEvent = null

    document.addEventListener('mousemove', e => {
    // console.log('mousemove', e)
    mouseEvent = e
    })

    document.addEventListener('keydown', e => {
    console.log(e, mouseEvent)
    })
    ```
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4700 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 05:38 · PVG 13:38 · LAX 21:38 · JFK 00:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.