当我按Tab键或通过鼠标时,我想更改文本输入的背景颜色(.item-input
) - 出于某种原因焦点没有触发?
例如:
<tr class="item">
<td> <input class="item-input" type="text" /> </td>
<td> <input class="option" type="text" /> </td>
</tr>
如果通过按键或鼠标选择.item-input
if($('.item-input').is(':focus')) {
$(this).addClass("input-focus");
}
在css文件中我有:
.input-focus {
background-color: yellow;
}
答案 0 :(得分:4)
使用纯CSS:
.item-input:focus {
background-color: yellow;
}
&#13;
<input class="item-input" type="text" />
&#13;
但是如果你想使用jQuery,请收听focus
事件:
$('.item-input').on('focus blur', function() {
$(this).toggleClass("input-focus");
});
&#13;
.input-focus {
background-color: yellow;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="item-input" type="text" />
&#13;
我希望在.addClass()
上删除该类的情况下,使用.toggleClass()
方法替换blur
方法。