// method
Element.implement({convert:function(tag,properties){var props=this.getProperties.apply(this,properties);var newElement=new Element(tag,props).inject(this,'after');this.destroy();return newElement;}});
// Usage
$('to_p').addEvent('click',function(){
$('text').convert('p',['name','id','class','text']);
});
$('to_h2').addEvent('click',function(){
$('text').convert('h2',['name','id','class','text']);
});
$('to_input').addEvent('click',function(){
$('input').convert('input',['name','id','class','value']);
});
$('to_textarea').addEvent('click',function(){
$('input').convert('textarea',['name','id','class','value']);
});
<p>
<button id="to_p">Convert to paragraph</button>
<button id="to_h2">Convert to header 2</button>
</p>
<h2 id="text" class="lame sauce d00d">Header to paragraph</h2>
<p>
<button id="to_input">Convert to input</button>
<button id="to_textarea">Convert to textarea</button>
</p>
<p>
<input type="text" name="myInput" id="input" class="lame sauce d00d" value="I am the value" />
</p>