0

我得到了一个带有一些单元格的输入和表格。我是 jQuery 的新手,谷歌叔叔无法解决我的问题,所以你去:

<input type='text' id='myinput' value='' />
<table class="main">
    <tr>
        <td id="cells">Some cells</td>
    </tr>
</table>

现在怎么样...我有一些功能可以在您键入时自动完成单词,一切都很好,它会在字段下显示匹配单词的列表,现在当我单击其中一个单词时,我想淡化一些单元格。

我想出了类似的东西:

$('#myinput').focus(function() {
   if( $(this).val() == "dog") {
      $('#cells').animate({'opacity':'0.2'},1000, function() {
        $('#myinput').val('').css('opacity','1');
      });
   }
});

它可以工作,但是我必须单击该字段两次-键入并获得匹配的单词时,它第一次单击列表,而淡出单元格是第二次单击该字段...我想在第一次单击后立即将其淡化. 我该如何改进该代码?

4

1 回答 1

0

试试这个:(这是你想要实现的):

$('#myinput').change(function() {
   if( $(this).val() == "dog") {
      $('#cells').animate({'opacity':'0.2'},1000, function() {
        $('#myinput').val('').focus();
         $('#cells').css('opacity','1');
      });
   }
});

在这里工作小提琴:http: //jsfiddle.net/M4KgL/1/

于 2013-09-16T09:13:51.417 回答