scratch
/bower_components/jquery/src/wrap.js |
@@ -0,0 +1,77 @@ |
define( [ |
"./core", |
"./core/init", |
"./manipulation", // clone |
"./traversing" // parent, contents |
], function( jQuery ) { |
|
"use strict"; |
|
jQuery.fn.extend( { |
wrapAll: function( html ) { |
var wrap; |
|
if ( this[ 0 ] ) { |
if ( jQuery.isFunction( html ) ) { |
html = html.call( this[ 0 ] ); |
} |
|
// The elements to wrap the target around |
wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); |
|
if ( this[ 0 ].parentNode ) { |
wrap.insertBefore( this[ 0 ] ); |
} |
|
wrap.map( function() { |
var elem = this; |
|
while ( elem.firstElementChild ) { |
elem = elem.firstElementChild; |
} |
|
return elem; |
} ).append( this ); |
} |
|
return this; |
}, |
|
wrapInner: function( html ) { |
if ( jQuery.isFunction( html ) ) { |
return this.each( function( i ) { |
jQuery( this ).wrapInner( html.call( this, i ) ); |
} ); |
} |
|
return this.each( function() { |
var self = jQuery( this ), |
contents = self.contents(); |
|
if ( contents.length ) { |
contents.wrapAll( html ); |
|
} else { |
self.append( html ); |
} |
} ); |
}, |
|
wrap: function( html ) { |
var isFunction = jQuery.isFunction( html ); |
|
return this.each( function( i ) { |
jQuery( this ).wrapAll( isFunction ? html.call( this, i ) : html ); |
} ); |
}, |
|
unwrap: function( selector ) { |
this.parent( selector ).not( "body" ).each( function() { |
jQuery( this ).replaceWith( this.childNodes ); |
} ); |
return this; |
} |
} ); |
|
return jQuery; |
} ); |