Bug Tracker

Ticket #3749: preservechildren.patch

File preservechildren.patch, 693 bytes (added by kkaefer, 13 years ago)

alternative patch that extends the .remove() function instead of adding another function

  • core.js

     
    12841284                jQuery.className[ jQuery.className.has( this, classNames ) ? "remove" : "add" ]( this, classNames );
    12851285        },
    12861286
    1287         remove: function( selector ) {
     1287        remove: function( selector, preserveChildren ) {
    12881288                if ( !selector || jQuery.filter( selector, [ this ] ).length ) {
     1289                        if ( this.parentNode && preserveChildren ) {
     1290                                while ( this.firstChild ) {
     1291                                        this.parentNode.insertBefore( this.firstChild, this );
     1292                                }
     1293                        }
    12891294                        // Prevent memory leaks
    12901295                        jQuery( "*", this ).add([this]).each(function(){
    12911296                                jQuery.event.remove(this);