zoukankan      html  css  js  c++  java
  • IE8 jq focus BUG

    jq的 .focus() 在IE8下面会有一些意想不到的BUG,下面是解决办法;

    一、我做的项目中有些场景需要用到键盘的回车作为触发事件,然后把focus移到其他功能或者按钮上面,刚刚好这个按钮或者功能也有绑定回车事件,那么结果就是从上一个地方按下回车键,焦点马上移动到下一个按钮或功能上,直接就触发了这个按钮的回车事件;可以理解为无缝切换,没有间隔,一下回车变焦点并触发了下一个焦点按钮上的回车事件,但是这并不是我想要的结果,所以我们可以在上一个回车事件做一个延时,让他们不能无缝连接起来触发;下面是代码:

    setTimeout(function () {
        $('.my-thing').focus();
    }, 100);

    二、有些场景直接用$(elm).focus() ,其他浏览器正常,偏偏IE8无效;可以这样解决:

    $(elm).focus().focus();
    或者
    $(elm).focus().select();
  • 相关阅读:
    数据结构 1
    MyBatis 7
    MyBatis 6
    MyBatis 5
    MaBatis 4
    MyBatis 3
    目录和文件管理
    Linux常用命令精讲
    Sentos7.4安装说明
    RIP
  • 原文地址:https://www.cnblogs.com/3box/p/5803747.html
Copyright © 2011-2022 走看看