    $.fn.replaceText = function( search, replace, text_only ) {  
      return this.each(function(){  
        var node = this.firstChild,  
          val,  
          new_val,  
          remove = [];  
        if ( node ) {  
          do {  
            if ( node.nodeType === 3 ) {  
              val = node.nodeValue;  
              new_val = val.replace( search, replace );  
              if ( new_val !== val ) {  
                if ( !text_only && /</.test( new_val ) ) {  
                  $(node).before( new_val );  
                  remove.push( node );  
                } else {  
                  node.nodeValue = new_val;  
                }  
              }  
            }  
          } while ( node = node.nextSibling );  
        }  
        remove.length && $(remove).remove();  
      });  
    };  
