【发布时间】:2011-04-12 07:42:09
【问题描述】:
我有一个包含文本和图像的 HTML 字符串,例如
<p>...</p>
<img src="..." />
<p>...</p>
我需要获取第一张图片的 src 属性。图片可能出现在<p> 之后,也可能不出现,并且可能有多个图片,或者根本没有图片。
最初,我尝试将字符串附加到 DOM 并进行过滤。但是,如果我这样做,浏览器会请求所有外部资源。在我的情况下,这会增加很多不必要的开销。
我最初的做法:
var holder = $('<div></div>');
holder.html(content);
var src = holder.find('img:first').attr('src');
如何在不附加 HTML 的情况下获取第一张图片的 src?我需要使用正则表达式,还是有更好的方法?
解决方案需要基于 javascript/jQuery——我没有使用任何服务器端语言。
我的问题非常类似于:http://forum.jquery.com/topic/parsing-html-without-retrieving-external-resources
谢谢
【问题讨论】:
-
您的问题不够清楚,无法回答,可能是一个示例可以提供帮助。你可以发布一个例子吗?你的代码中的
content是什么? -
content指的是 HTML 字符串。 HTML 字符串描述了一篇新闻文章——它可以包含文本、图像或视频。该字符串来自 JSON 对象,例如var 内容 = myJSONObj.articleText;其中值可能类似于:Some text...<img src="http://..." border="0" alt="My alt text"><br>More text...
标签: javascript jquery attributes