我想知道如何在jquery中创建这个.live()

时间:2012-05-02 02:14:51

标签: jquery

我想知道我怎么能让它活着?我有一个通过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);

1 个答案:

答案 0 :(得分:3)

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

如果您只需使用$('selector').live(),请使用此库:

LiveQuery:https://github.com/brandonaaron/livequery

$('selector').livequery(function(){});