imherer

如何实现使用 Vue+ElementPlus 在 Chrome 全屏时按下 ESC 是关闭弹窗而不是退出全屏

  •  
  •   imherer · Nov 4, 2024 · 1516 views
    This topic created in 572 days ago, the information mentioned may be changed or developed.

    最近有个项目使用 Vue3+ElementPlus ,其中有很多 dialog 弹窗,elementPlus 默认可以使用 ESC 关掉这个弹窗,但是在全屏下按 ESC 是退出全屏而不是关闭弹窗。

    全屏使用的是screenfull这个库

    如果使用 Chrome 自带的 F11 全屏它是 按住 ESC 才退出,而screenfull按下 ESC 就退出

    各位前端大佬有什么解决办法吗?

    5 replies    2025-01-21 16:43:44 +08:00
    shadowyue
        1
    shadowyue  
       Nov 4, 2024
    不如直接把 elementPlus 按 ESC 关闭 dialog 这个功能开关关了?
    zack5337
        2
    zack5337  
       Nov 4, 2024
    监听事件了 event.key === 'Escape'
    imherer
        3
    imherer  
    OP
       Nov 4, 2024
    @shadowyue 不能关,需求上要这个功能的嘛。我也想关
    imherer
        4
    imherer  
    OP
       Nov 4, 2024
    @zack5337 emmm ,我试试
    jaminq
        5
    jaminq  
       Jan 21, 2025 via iPhone
    没有测试,但是默认让 dialog 聚焦,然后相应 esc ,停止传递,试试;此外全局的话,试试在捕获阶段绑定,处理时停止传递
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2950 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 08:40 · PVG 16:40 · LAX 01:40 · JFK 04:40
    ♥ Do have faith in what you're doing.