0

我正在使用 twitter bootstrap collaspe 功能。li 元素如下所示,每个选项卡内容由类 .attrInputs 的输入元素组成

当我单击类药丸的元素时,我希望每个选项卡中的输入元素都能聚焦,这样用户就不需要单击输入元素。当单击 .pill 类时,我添加了一些 jquery 来使用 .focus 执行此操作,但它只能在第二次单击而不是第一次单击时进行。

   <ul class="nav nav-pills">
           <li>
              <a class="pill" href="#a" data-toggle="pill">
                A
              </a>
           </li>
           <li>
               <a class="pill" href="#b" data-toggle="pill">
                B
               </a>
           </li>
    <ul>

我的标签内容。每个选项卡的 html 都是相同的

<div class="span10 offset1 tab-pane active" id="collar">
    <div class="span4">
          <input class="attrInputs" name="collar" type="text">
    </div>
    <div class="span4 offset1">
          <img src="http://placehold.it/300x300/156153">
    </div>
</div>

$('.pill').on('click',function(){
   $('.attrInputs').focus(); 
});

提前致谢

4

1 回答 1

1

你可以试试:

$('.pill').on('click',function(){
   setTimeout(function() {
     $('.attrInputs').focus(); 
   },0);
});

setTimeout()将打破点击处理程序链。

有关更多信息,请参阅https://github.com/twitter/bootstrap/issues/2380

于 2013-02-21T06:40:21.330 回答