【问题标题】:Jquery Terminal always focusedJquery 终端始终专注
【发布时间】:2017-10-07 06:23:56
【问题描述】:

我使用的是 JCubic Jquery 终端,效果很好,但光标总是集中在终端 cmd 上。

页面上的任何其他文本字段/文本框都不起作用,因为任何按键都会将光标重新聚焦在终端上。

https://github.com/jcubic/jquery.terminal/tree/master/js

我假设 jquery.terminal-1.3.1.js 文件中有答案。但是在哪里?

谢谢:)

【问题讨论】:

  • 可能的解决方案涉及onBlurkeydownkeypress 处理程序在您创建终端时传递的options - 可能还有其他的,有一个 LOT options in the DOCUMENTATION
  • 你在全屏演示中使用onBlur: fuction() { return false; }吗?这可以防止失去焦点。
  • 你们有在线演示吗?
  • 嘿!很高兴看到这个项目如此活跃。我绝对可以做一个演示,我如何向您发送登录详细信息?此外,它显示“onBlur:e.noop”
  • 我通过将任何 onBlur 从 false 更改为 true 来修复它。不知道这是否是最聪明的方法!

标签: javascript jquery html terminal jquery-terminal


【解决方案1】:

当目标是input 时,我通过从keypresskeydown 处理程序返回来解决这个问题:

return $(this.context).terminal( () => {}, {
    keypress        : (e, terminal) => {
        if (e.target.tagName.toLowerCase() === 'input') {
                return true;
        }
        // ...
    },

    keydown         : (evt, terminal) => {
        if (evt.target.tagName.toLowerCase() === 'input') {
                return true;
        }
        // ...
    }
    // ...
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-20
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多