$(html)
让 jQuery 实际上将 html 代码注入到隐藏的页面中,以计算宽度、高度、样式、距离、属性等。此操作总是使用浏览器内置的 DOM 解析器,这就是为什么图像、iframe、背景图像,脚本,链接等被访问。
您可以使用$.parseXML(html);
,但 html 代码需要是有效格式的 xml (xhtml)。
如果您唯一关心的是图像,那么您可以使用以下代码:
// take the src attribute, change it to hiddensrc
// credits: http://stackoverflow.com/a/1310706/608886
var html = html.replace(/<img([^>]*)\ssrc=(['"])(?:[^\2\/]*\/)*([^\2]+)\2/gi,
"<img$1 hiddensrc=$2$3$2");
// parse the code
var parsed = $(html);
///////////////
//
// do whatever you want here
//
//////////////
// put the src attribute back at your discretion
parsed.find(img[hiddensrc]).each(function(){
$(this).attr('src',$(this).attr('hiddensrc'));
});