我搜索了一个解决方案,但没有任何意义,所以这是我的问题:
我想解析一个包含HTML文本的字符串。我想用JavaScript做。
我尝试了这个库,但似乎它解析了当前页面的HTML,而不是字符串。因为当我尝试下面的代码时,它更改了页面的标题:
var parser = new HTMLtoDOM("<html><head><title>titleTest</title></head><body><a href='test0'>test01</a><a href='test1'>test02</a><a href='test2'>test03</a></body></html>", document);
我的目标是从读取的HTML外部页面中提取链接,就像读取字符串一样。
您知道执行此操作的API吗?
创建一个虚拟DOM元素并将字符串添加到其中。然后,您可以像处理任何DOM元素一样操作它。
var el = document.createElement( 'html' ); el.innerHTML = "<html><head><title>titleTest</title></head><body><a href='test0'>test01</a><a href='test1'>test02</a><a href='test2'>test03</a></body></html>"; el.getElementsByTagName( 'a' ); // Live NodeList of your anchor elements
编辑:添加jQuery的答案,以取悦粉丝!
var el = $( '<div></div>' ); el.html("<html><head><title>titleTest</title></head><body><a href='test0'>test01</a><a href='test1'>test02</a><a href='test2'>test03</a></body></html>"); $('a', el) // All the anchor elements