私はこのマークアップを持っています:-
<textarea id="TextBox1"></textarea>
<span id="validator"></span>
そして次のjQuery:-
jQuery('#TextBox1').live('input', function() {
var charLength = $(this).val().length;
$('#validator').html(charLength + ' of 250 characters used');
if ($(this).val().length > 250) {
$('#validator').html('<strong>You may only have up to 250 characters !</strong>');
}
});
これは正常に機能します。
上記のjQueryを変更して、#validator
表示されたときにフェードインし、長さが0に低下した場合にもフェードアウトするようにします(現在、これは行わず、メッセージは画面に表示されたままになります)。
編集:追加するのを忘れました、私は次の機能も持っています:-
jQuery.fn.fadeInOrOut = function(status) {
return status ? this.fadeIn() : this.fadeOut();
};
私は以下を試しましたが、効果がないようです:-
$('#validator').html(charLength + ' of 250 characters used').fadeInOrOut(!! charLength);
と...
$('#validator').html(charLength + ' of 250 characters used');
$('#validator').fadeInOrOut(!! charLength);