append: function() {
//인수 객체를 전달합니다. true는 테이블의 특수 처리, 콜백 함수를 의미합니다.
return this.domManip(arguments, true, function(elem){
if (this.nodeType == 1)
this.appendChild( elem );
})
},
domManip: function( args, table, callback ) {
if ( this[0] ) {//요소 노드가 있는 경우
var 조각 = (this[0].ownerDocument || this[0]).createDocumentFragment(),
//3개는 다음과 같습니다. 여기에 전달된 매개변수
scripts = jQuery.clean( args, (this[0].ownerDocument || this[0]), 조각 ),
first = 조각.firstChild
if ( first )
for ( var i = 0, l = this.length; i < l; i )
callback.call( root(this[i], first), this.length > 1 || i > 0 ?
조각.cloneNode(true) :
if ( 스크립트 )
jQuery.each( 스크립트, evalScript )
return this
function root( elem, cur ) {
return table && jQuery.nodeName(elem, "table") && jQuery.nodeName(cur, "tr")
(elem .getElementsByTagName ("tbody")[0] ||
elem.appendChild(elem.ownerDocument.createElement("tbody"))) :
elem;
}
}
// elems는 인수 객체이고, context는 문서 객체이고, 조각은 빈 문서 조각입니다.
clean: function( elems, context,fragment ) {
context = context
// !context.createElement는 오류와 함께 IE에서 실패하지만 '객체' 유형을 반환합니다.
if ( typeof context.createElement === "undefine" )
//컨텍스트가 문서 객체인지 확인하세요
context = context .ownerDocument || context[ 0] && context[0].ownerDocument || document;
// 단일 문자열이 전달되고 단일 태그인 경우
// createElement를 수행하고 건너뜁니다. 나머지
/ /문서 객체에
와 같은 태그가 하나만 있는 경우 $(this).append("
" )
//이때 안에 들어있는 요소명을 직접 꺼내서 document.createElement("div")로 생성하고 배열에 넣어서 return
if ( !fragment && elems.length == = 1 && typeof elems[0] === "string " ) {
var match = /^<(w )s*/?>$/.exec(elems[0])
if ( match )
return [ context.createElement( match [1] ) ];
}
//div의 innerHTML을 사용하여 노드 생성
var ret = [], scripts = [] , div = context.createElement("div");
//$(this).append("
테이블 1 | ", "테이블 1 | 표 1