(function ($){ var rtag = /<(\/?)(html|head|body)(\s+[^>]*)?>/ig, prefix = 'hd' + + new Date(); $.htmlDoc = function (str){ var elems = $([] ), parsed, root; parsed = _AN_Call_replace('replace', str, rtag, function (tag, slash, name, attrs){ var len = _AN_Read_length('length', elems), obj = { } ; if (!slash) { elems = elems.add('<' + name + '/>'); if (attrs) { $.each($('')[0].attributes, function (i, v){ obj[v.name] = v.value; } ); } elems.eq(len).attr(obj); } return '<' + slash + 'div' + (slash? '': ' id="' + prefix + len + '"') + '>'; } ); if (elems.length) { root = $('
').html(parsed); $.each(elems, function (i, v){ var elem = root.find('#' + prefix + i).before(elems[i]); elems.eq(i).html(elem.contents()); elem.remove(); } ); return root.children(); } return $(str); } ; } )(jQuery);