更改图像的src属性是否会阻止图像下载?
Does changing the src attribute of an image stop the image from downloading?
假设我有两个手风琴选项卡。第一个加载数百张图片,并在页面加载时打开。
我希望能够阻止图像下载,如果用户单击第二个手风琴选项卡。通过js改变图像的src属性会阻止图像下载吗?或者请求只是继续直到完成而不显示在页面上?
我有一个脚本,加载SO标志在正好3秒,我已经为另一个问题。
http://alexturpin.net/slowimage/slowimage.php使用它,我试图重现这个问题:
var img = new Image();
img.onload = function() {
alert("loaded");
};
img.src ="http://alexturpin.net/slowimage/slowimage.php";
setTimeout(function() {
img.src = "";
}, 1000);
http://jsfiddle.net/Xeon06/RrUvd/1/从我收集到的,在Chrome中,onload
不会被解雇,但浏览器继续显示一个旋转器,如果我去网络选项卡上找到我的图像并检查它的内容,它就在那里。所以我的答案是没有,图像仍然加载,至少在Chrome中。
这是一个有趣的问题,我建议你试着在尽可能多的浏览器中测试它,并写一些关于它的博客文章
您的浏览器使用特定的HTTP GET请求请求该图像,如在HTTP协议中指定。一旦请求,http服务器开始传输。
因此,它位于浏览器(作为http客户端)和http服务器之间。
由于http协议不考虑中止a的选项传输时,浏览器应该实现一种超标准的机制以编程方式中止连接。但是由于这个没有指定在任何标准下,我想你都找不到这样做的方法Javascript或任何客户端代码。
您可以尝试window.stop()来停止所有请求,但不是单个请求的人。
如果你想停止一个大图片的请求,你该怎么办可以做的是将图像加载到隐藏IFRAME内的文档中。的IFRAME的onload事件可用于将图像加载到main文档,此时它应该被缓存(假设您有
如果图像花费太长时间,那么您可以访问IFRAME的
内容窗口,并发出停止命令。你需要有尽可能多的IFRAME元素,因为有图像可以同时请求。
直接从这里取&这里。
不确定是否会,就像其他评论一样。但我可以提出一种行之有效的方法。假设不是所有的图像都可见,只要在它们可见时设置正确的src属性即可。
所以当它不可见时,默认url为myGray.gif,当它进入视图时,设置为myImage.jpg。
当您关闭当前手风琴时,您可以再次将图像源设置回您的轻量级gif。(这可以防止在某些版本的ipad上出现与gc相关的错误)。
- 如何在Edge中下载图像/png数据URI
- 将SVG下载为PNG图像
- 将图像下载为数据url时出错
- node.js从http请求列表中将图像下载到服务器
- 在阵列中预加载图像(并等待图像下载)
- 如何以编程方式将图像下载到iPad
- 异步:1. 发布网址和 2.图像下载(从给定的 URL)
- 强制图像下载 - 缺少文件扩展名
- 创建图像下载按钮支持所有浏览器
- 强制将远程托管的图像下载到浏览器
- 使用Google Analytics跟踪图像下载
- 单击图像下载链接
- Wordpress的图像下载按钮
- 在页面上的其他几个图像下载完成后,HTML视频开始下载
- 如何获得图像下载时,用户点击
- 更改图像的src属性是否会阻止图像下载?
- 使用javascript为用户提供图像下载
- 保护图像下载理论
- 如何将画布图像下载位置更改为用户特定位置
- 如何在HTML中为移动页面创建图像下载链接?