как насчет:
var bodyContents = htmlstring.split('<body');//no >, body could have a property
bodyContents = bodyContents[1].replace('</body>','').replace('</html>','').replace(/^.*\>/,'');
Последняя замена регулярных выражений удаляет закрывающий >
открывающего тега body и все возможные свойства тега.
Однако это некак бы я это делал ... Если это вообще возможно, я бы создал (i) узел фрейма, загрузил html в этот фрейм и получил innerHTML из тега body.Просто предложение.
Верно, путь iFrame:
var document.ifrm = document.createElement('iframe')
document.ifrm.style = 'visibility:hidden';
document.body.appendChild(document.ifrm);
idoc = (document.ifrm.contentDocument ? document.ifrm.contentDocument : document.ifrm.contentWindow.document;)
idoc.open();
idoc.writeln('<html><head><title>foobar</title></head><body><p>Content</p></body></html>');
idoc.close();
var bodyContents = idoc.body.innerHTML;
Для объяснения кода: http://softwareas.com/injecting-html-into-an-iframe
или любой другой запрос на google.com по этому вопросу:)