在 jQuery 中,我们可以使用find()
过滤img
标签并检索它们的src
属性,但是这样做会导致图像加载。
我实际上是从 feeds 获取 html 字符串,所以我不能相信它的格式是否正确。
我尝试了 XML 解析器:
function searchXml(xmlStr, selector) {
var parser, xmlDoc;
if(window.DOMParser) {
parser = new DOMParser();
xmlDoc = parser.parseFromString(xmlStr, "text/xml");
} else {
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML(xmlStr);
}
return $(xmlDoc).find(selector);
}
console.log(searchXml('<p><img src="http://image.url/file.jpg" /></p>','img').attr('src'));
它适用于小的 HTML 字符串,但不适用于来自提要的 HTML。
有理由不这样做吗?