Вот, пожалуйста, без манипуляций со строками:
const str = 'Header
Paragraph
'
const div = document.createElement('div');
div.innerHTML = str;
const [h, p] = [...div.children].map(el=>el.textContent);
console.log(h, p);
Или даже чище, используя эксперимент ] DOMParser
API:
const doc = new DOMParser().parseFromString('Header
Paragraph
', 'text/html');
const [h, p] = [...doc.body.children].map(el=>el.textContent);
console.log(h, p);
В событии DocumentCompleted посмотрите на DocumentText
свойство управления WebBrowser. Это должно иметь полный текст загруженной страницы.
IHTMLDocument2(Web.Document).Body.InnerHTML;
Это должно возвратить источник страницы.
Я думал, что это будет легко, но кажется, что об этом, возможно, забыли. Можно легко сделать это с управлением TidHTTP все же.
MyPage := IdHTTP1.Get('www.google.com');
Я знаю не, что Вы хотите, но могли бы помочь.
Другой метод, который работает хорошо, должен использовать Синапс. Используйте вызов синапса HttpGet для получения начального ресурса (который дает Вам исходный код), затем управляют по мере необходимости.
Другая опция состояла бы в том, чтобы использовать компонент EmbeddedWB, который выставляет Намного больше свойств и функций веб-браузера, чем стандартный компонент Delphi делает и все еще соответствует Вашему требованию выполнения его в веб-браузере.
Чтобы получить доступ ко всему HTML страницы через элемент управления WebBrowser, используйте:
Web.Document.All[0].OutterHtml;
private void btnTest_Click(object sender, EventArgs e)
{
wbMain.Navigate("foo.xml");
wbMain.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(testing);
}
private void testing(Object sender, WebBrowserDocumentCompletedEventArgs e)
{
test = wbMain.DocumentText;
}
Я знаю, что это немного поздно, но у меня это работает. wbMain - это объект WebBrowser.