いくつかの疑似クラスを使用して、入力がイベントにフォーカスされていることをマークしfocus
、それらがすべてフォーカスされているかどうかを確認できます。はいの場合は、スパンからクラスを削除します。
HTML:
<span class="group1 red">Test span</span>
<div id="group1-container">
<input class="group1" type="text" />
<input class="group1" type="text" />
<input class="group1" type="text" />
<input class="group1" type="text" />
<input class="group1" type="text" />
</div>
JavaScript:
group1Container$ = $('#group1-container');
group1$ = $('input.group1', group1Container$);
group1$.on('focus', function() {
var input$ = $(this);
input$.addClass('focused');
if(!$('input.group1:not(.focused)', group1Container$).length) {
$('span.group1').removeClass('red');
group1$.off('focus');
}
});
デモ