我有一个很长的页面,可以在用户滚动时动态加载图像.
但是,如果用户快速滚动离开页面的某个部分,我不希望图像继续加载到页面中现在看不到的部分.
除了图像加载之外,页面上还有许多其他请求同时发生,因此在滚动事件上触发一个钝的window.stop()是不可接受的.
我已经尝试删除和清除不再在视图中的图像的img src属性,但是,由于请求已经启动,图像继续加载.
请记住,当用户短暂滚动浏览页面的那一部分时,图像src已填充.一旦过去,我无法在不使用window.stop()的情况下从停止加载中获取该图像.清除src不起作用.(Chrome&FF)
类似的帖子我发现接近,但似乎没有解决这个问题:
假设您在Javascript中将SRC分配给IMG标记.它是一个大型SRC,您希望在加载完成之前取消它.将SRC分配给另一个图像不会阻止数据加载.
也就是说,在加载过程中,您可以将SRC分配给另一个较小的图像,较小的图像将被加载并显示在浏览器中.但是,原始SRC仍在继续下载.
同样,删除IMG节点不会阻止SRC继续下载.请不要猜猜,看看重复步骤.
摄制
(1)在Windows中的Chrome中加载此URL:http: //68.178.240.17/imgLoadTest/imgLoadTest.htm
(2)按CTRL-SHIFT-J打开开发人员面板
(3)在Chrome开发人员面板的顶行图标上,点击网络图标以观看网络活动.
(4)在步骤1中加载的网页上,单击"加载图像"按钮,并在开始加载大型(32meg)图像时观察开发人员面板.
(5)在网页上单击"尝试取消"按钮以加载其他图像.
(6)加载小图像,但在开发人员面板中观察网络并注意到大图像继续下载.