Javascript 响应新DOM的函数
我有以下功能,可以计算用户在文本区域中输入的剩余字符数:Javascript 响应新DOM的函数,javascript,ajax,jquery,dom,Javascript,Ajax,Jquery,Dom,我有以下功能,可以计算用户在文本区域中输入的剩余字符数: $("textarea").keyup(function() { var max = 500; var length = $(this).val().length; var char = max - length; if (length > max) { $(this).parent().find('.counter span').html('<div class="text-e
$("textarea").keyup(function() {
var max = 500;
var length = $(this).val().length;
var char = max - length;
if (length > max) {
$(this).parent().find('.counter span').html('<div class="text-error">' + char + '</div>');
} else {
$(this).parent().find('.counter span').text(char);
}
});
$(“textarea”).keyup(函数(){
var max=500;
var length=$(this).val().length;
var char=最大长度;
如果(长度>最大值){
$(this.parent().find('.counter span').html(''+char+'');
}否则{
$(this.parent().find('.counter span').text(char);
}
});
如果我在页面中引入一个新的DOM,那么上面的函数对新引入的textarea不起作用。如何使其与新的DOM一起工作
谢谢。您需要jQuery中的
on
函数
$(“body”)。在(“keyup”,“textarea”,function(){…
MattDiamant的回答对您的情况很好,但我只想补充一下复制粘贴的情况 如果用户仅使用鼠标(右键单击->粘贴)从另一个word文档复制并粘贴到keyarea中,则不会触发keyup 因此,除了“keyup”之外,我建议您添加事件“input”、“propertychange”,这样您的
on
函数将是:
$(“body”)。在('keyup-input-propertychange','textarea',function(){…});
DOM是整个文档模型,您谈论的是DOM元素。仅供将来参考:)阅读事件委派,这里会问这个问题。具体阅读直接和委派事件