基于这个问题基于计数器值的淡出文本
我有以下标记:-
<textarea id="TextBox1"></textarea>
<br/>
<span id="validator" style="display:none"></span>和以下jQuery:
jQuery('#TextBox1').live('input', function() {
var charLength = $(this).val().length;
$('#validator').html(charLength + ' of 250 characters used');
$('#validator').fadeInOrOut(!! charLength);
if ($(this).val().length > 250) {
$('#validator').html('<strong>You may only have up to 250 characters !</strong>');
}
});
jQuery.fn.fadeInOrOut = function(status) {
return status ? this.fadeIn() : this.fadeOut();
}; 在Firefox中,这一切都很好,但是在IE中,特别是当从textarea删除文本时,.live()事件似乎不会被触发。
这里有一个小提琴演示了上面的内容,如果您在Firefox功能中加载得很好,在IE中加载并向textarea添加一些文本,然后使用backspace键删除一些文本。
例外/CsXU8 8/
使用on编辑似乎起到了很大的作用,这个bug仍然存在。
发布于 2012-05-28 08:19:52
根据您的jQuery版本,使用.on()而不是.live(),而不是绑定到input,只需使用keyup捕捉事件
jQuery('#TextBox1').on('keyup', function() { });发布于 2012-05-28 08:22:58
您可以使用keyup事件而不是一般不受支持的input。此外,您还可以使用on而不是不推荐的live。
jQuery(document).on('keyup', '#TextBox1', function() {
...
});演示: http://jsfiddle.net/CsXU8/10/
发布于 2012-05-28 08:20:12
对于IE8/9,使用以下代码替换第一行
jQuery('#TextBox1').on('keyup', function() {
https://stackoverflow.com/questions/10781384
复制相似问题