我有一个HTML片段,我通过jQuery客观化,目的是从中提取一些数据。这个片段有一些我不希望浏览器下载的图像资源。有没有办法做到这一点。
我当前代码的简化版本:
var html = '<p class="data">Blah Blah</p>...<img src="/a/b/...png">...<div>...</div>';
var obj = $(html); // this makes the browser download the contained images as well!!!
var myData = {
item_1: obj.find('.data:first').text(),
item_2: obj.find('.data2:first').text(),
.... // and so on..
};
答案 0 :(得分:4)
除非您认为字符串中的子字符串src=
的实例对您很重要,否则您可以这样做:
html = html.replace(/src=/g, "data-src=");
或可能
html = html.replace(/src\s*=/g, "data-src=");
...允许空格。这样,浏览器就不会看到src
属性,也不会触发下载。
有时直接方法是最好的。当然,如果你认为可能有src=
子串在你想要提取的东西方面很重要,那么......