Jquery 终端始终专注

Posted

技术标签:

【中文标题】Jquery 终端始终专注【英文标题】:Jquery Terminal always focused 【发布时间】: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 来修复它。不知道这是否是最聪明的方法! 【参考方案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;
        
        // ...
    
    // ...
);

【讨论】:

以上是关于Jquery 终端始终专注的主要内容,如果未能解决你的问题,请参考以下文章

ruby 作为程序员,您应该始终努力使代码尽可能可读。在这次挑战中,我们将专注于良好的标志

ruby 作为程序员,您应该始终努力使代码尽可能可读。在这次挑战中,我们将专注于良好的标志

摩杜云亮相CDEC2021中国数字智能生态大会,始终专注云+数据

jQuery专注于数组模糊

jQuery:如何专注于输入文本字段,使光标位于文本的末尾?

JavaScript jquery - 专注于页面上的第一个文本输入字段