[英]Removing from the DOM an image not yet fully loaded: is transmission aborted?
将图像(未缓存)添加到DOM; 例如(使用jQuery):
$('#hereItGoes').append('<img id="theImage" src="image.jpg" />');
浏览器开始下载资源,需要一些时间......
在图像完全加载之前,某种事件会触发删除图像的回调。
$('#theImage').remove();
图像资源传输是否中止?
更具体地说, 这是否会阻止服务器发送(图像)数据?
为这个问题提供一些“背景”:
长滚动页面通常设计为延迟加载图像:仅当图像进入视口时才加载; 当它们中的每一个都准备就绪时,它就会淡入并显示给用户。
现在如果用户快速向下滚动页面怎么办?
可能会出现许多图像进入视口(并开始下载)但在准备好之前退出的情况。
保持加载会浪费带宽(和服务器资源)。
不,这是不可能的。 这是因为一旦您请求资源,客户端代码就会异步请求它,这样它就不会阻止其他DOM加载。
在更复杂的服务器端请求中,可以发送另一个客户端消息以阻止服务器不断处理响应的数据,但是如果这是发回图像,则尝试停止它是没有意义的。
这不会损害客户端DOM性能,因为您只是忽略了服务器响应。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.