[jQuery] 엘리먼트 복제하기 플러그인 on redgoose note

[jQuery] 엘리먼트 복제하기 플러그인

Nest: Development Category: Javascript 2013-03-16

  • 이 플러그인은 순수하게 엘리먼트를 복제하는 역할을 한다.
  • 엘리먼트를 복제하고, 복제된 엘리먼트는 return으로 빠져나온다. 그래서 플러그인 자체 함수를 객체로 사용하여 핸들링할 수 있다.
  • 호출 형태는 복제할 오브젝트.cloneElement({target:복제된 엘리먼트를 이동시킬 위치}); 방식으로 이루어진다.
  • 보통 complete함수에서 호출할 수 있는데 그럴 필요까지는 없을거같아 보여서 return으로 출력했다.

Source

;(function($){
    // clone element
    $.fn.cloneElement = function(options)
    {
        var
            _this = $(this)
            ,_defaults = {
                target : null
            }
            ,_opts = $.extend(_defaults, options)
            ,_output = null
        ;

        if (_opts.target !== null)
        {
            _output = _this
                .clone()
                .appendTo(_opts.target)
            ;
            return _output;
        }
    }
})(jQuery);

사용방법

// 방법.1
var ce = form.cloneElement({target : writeForm});
ce.addClass('active');

// 방법.2
form.cloneElement({target : writeForm})
    .addClass('active')
    .addAttr('width', '100%');