使用querySelectorAll为图像源添加前缀
Use querySelectorAll to add a prefix to image source
我正在尝试使用weserv.nl图像代理服务来使用它们的云服务器加载图像,而不加载原始的img src图像。现在为所有图像重写src已经太晚了,我也不想为此使用jQuery,因为我的目的是让网站加载更快,而不是更慢。因此,我希望img src不加载原始图像,而是在src中添加前缀并加载结果。Fiddle的例子就在这里。困难的部分是,这些图像没有分配id或类。
var items = document.querySelectorAll("div.separator img");
for (var i = items.length; i--;) {
var img = items[i];
img.src = img.src.replace(/.*?:'/'//g, "");
img.src='https://images.weserv.nl?url='+img.src+'&w=120';
}
由于图像没有附加类或Id,因此您仍然可以引用父标记并获取所有要替换的图像。
同样在您的代码中,您要设置src属性两次。这不是必需的。当您替换//
时,只需将其存储到一个变量中,稍后将其设置为img.src
根据你的小提琴,你有两个div,所以我使用div img
作为选择器来更改src
var items = document.querySelectorAll("div img");
for (var i = items.length; i--;) {
var img = items[i],
src = img.src.replace(/.*?:'/'//g, "");
img.src='https://images.weserv.nl?url='+src+'&w=120';
}
DEMO
相关文章:
- 如何在Phonegap中进行AJAX调用时添加加载屏幕
- 如何在加载前添加加载动画
- 如何在网页加载之前添加加载页面
- 在谷歌地图上添加加载叠加层
- 无法添加加载栏(角度)
- 在 PHP 脚本运行时添加加载图像
- 如何在博主上添加“加载更多”按钮
- 如何为AngularJS路由添加动态前缀
- 使用jQuery Ajax添加加载和错误文本
- Jquery Ajax HTML -添加加载
- 如何在javascript,jquery和php中添加加载,同时执行
- Jquery在添加加载额外内容的脚本后停止工作
- 在使用jQuery返回表单数据之前,不要添加加载类
- 解析服务添加加载事件
- 如何在加载所有资源之前添加加载效果?
- 在提交表单时添加加载gif
- 如何添加加载文本
- 添加加载指示每当应用程序停滞
- 我如何给一个号码加前缀和加零?
- 如何添加加载标志,而ajax从其他PHP文件中获取数据,并将其返回到当前页面