javascript - IE9文本输入焦点异常

标签 javascript jquery html internet-explorer-9

我正在尝试这个相当简单的代码。只要第一个上有 mouseup,它就应该将焦点转移到相邻的文本输入:

<!DOCTYPE html>
<html>  
  <head>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">   
    </script>
    <script>
      $(document).ready(function() {
        $(".foo").mouseup(function() {
          $(".boo").focus();
        });
      });   
    </script>
  </head> 
  <body>
    <input type='text' class='foo' />
    <input type='text' class='boo' />
  </body>    
</html>

在除IE9以外的所有浏览器中(我不敢在IE8或以下版本测试!),左键和右键(右键)都可以正常工作按钮 mouseup,即使焦点转移到第二个输入,上下文菜单仍会在第一个输入上弹出)。然而,在 IE9 中,焦点仍然停留在第一个文本输入上(上下文菜单也会在那里弹出)。

有什么方法可以解决它,使焦点转移到第二个吗?

最佳答案

.select() in ie 应该可以工作:

http://jsfiddle.net/n4hGC/5/

$(document).ready(function(){
  $('.foo').mouseup(function() {
    $('.boo').focus();
  });
  $('.foo').contextmenu(function() {
      $('.boo').select();
      return false;
  });
});

还通过返回 false 处理了上下文菜单。 希望有所帮助!

关于javascript - IE9文本输入焦点异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15057307/

相关文章:

javascript - 如何为onclick函数(electronJS)创建不带菜单栏的新窗口

javascript - jQuery 加载函数处理 session 超时

jquery - Phonegap 链接无效

html - html中使用的表单id和表单名称之间的区别

javascript - 水印mootools帮助

javascript - 如何检查设备时间设置是否正确?

javascript - apply 方法的第二个参数内的执行顺序

Javascript - 触发操作或事件?

javascript - 更改 2 个选择框后如何执行操作

html - "background-size: contain"图像内的响应式 DIV 缩放