0

我想知道我怎样才能让它活起来?我有一个通过 ajax 获取的文本框,它不包括已加载的脚本,这是我假设的 dom 的原因。任何人,我都玩过 .live() 但我通常有一个元素可以将它连接到 ex/ $('blah').live();,但我发现自己在这个问题上摸不着头脑,哈哈

(function($) {

$.fn.charCount = function(options){

    // default configuration properties
    var defaults = {    
        allowed: 140,       
        warning: 25,
        css: 'counter',
        counterElement: 'span',
        cssWarning: 'warning',
        cssExceeded: 'exceeded',
        counterText: ''
    }; 

    var options = $.extend(defaults, options); 

    function calculate(obj){
        var count = $(obj).val().length;
        var available = options.allowed - count;
        if(available <= options.warning && available >= 0){
            $(obj).next().addClass(options.cssWarning);
        } else {
            $(obj).next().removeClass(options.cssWarning);
        }
        if(available < 0){
            $(obj).next().addClass(options.cssExceeded);
        } else {
            $(obj).next().removeClass(options.cssExceeded);
        }
        $(obj).next().html(options.counterText + available);
    };

    this.each(function() {              
        $(this).after('<'+ options.counterElement +' class="' + options.css + '">'+ options.counterText +'</'+ options.counterElement +'>');
        calculate(this);
        $(this).keyup(function(){calculate(this)});
        $(this).change(function(){calculate(this)});
    });

};

})(jQuery);
4

1 回答 1

3

jQuery “live”(已弃用)或“on”仅适用于 click、dblclick、keydown、keypress、keyup、mousedown、mousemove、mouseout、mouseover 和 mouseup 事件。

如果你只需要$('selector').live()使用这个库:

实时查询:https ://github.com/brandonaaron/livequery

$('selector').livequery(function(){});
于 2012-05-02T02:27:53.707 回答