//Hacks para Chrome y Opera
 Request.HTML.implement({
        processHTML: function(text){
            var match = text.match(/<body[^>]*>([\s\S]*?)<\/body>/i);
            text = (match) ? match[1] : text;
           
            var container = new Element('div');
           
            return $try(function(){
                var root = '<root>' + text + '</root>', doc;
                if (Browser.Engine.trident){
                    doc = new ActiveXObject('Microsoft.XMLDOM');
                    doc.async = false;
                    doc.loadXML(root);
                } else {
                    doc = new DOMParser().parseFromString(root, 'text/html');
                }
                root = doc.getElementsByTagName('root')[0];
                for (var i = 0, k = root.childNodes.length; i < k; i++){
                    var child = Element.clone(root.childNodes[i], true, true);
                    if (child) container.grab(child);
                }
                return container;
            }) || container.set('html', text);
        }
   
    });

window.addEvent('domready', function(){
	//ToDo: Agregar las opciones para implementar otro Tag que no sea 'text'
	Element.implement({
		appendHTML: function(app_elemento,app_html,app_class){
			return this.grab(new Element(app_elemento,{
				'html':app_html,
				'class':app_class
			}));  
		}  
	}); 
});
