如果删除()带有jquery的img标记,浏览器还会尝试检索它吗?

如果删除()带有jquery的img标记,浏览器还会尝试检索它吗?,jquery,browser,Jquery,Browser,如果img src指向一个不存在的文件,这会阻止缓存中出现404吗 谢谢 可能不会。Javascript在所有元素准备就绪后以文档加载方式运行。可能不会。Javascript在所有元素准备就绪后以文档加载方式运行。为什么不进行测试 这是一把小提琴:来源: <img src="http://www.asdfghjkl.com/qwerty.png" style="display:none" />​ 它仍然加载了图像,并可能缓存了404命中率。为什么不测试一下呢 这是一把小提琴:来源:

如果img src指向一个不存在的文件,这会阻止缓存中出现404吗


谢谢

可能不会。Javascript在所有元素准备就绪后以文档加载方式运行。

可能不会。Javascript在所有元素准备就绪后以文档加载方式运行。

为什么不进行测试

这是一把小提琴:来源:

<img src="http://www.asdfghjkl.com/qwerty.png" style="display:none" />​
它仍然加载了图像,并可能缓存了404命中率。

为什么不测试一下呢

这是一把小提琴:来源:

<img src="http://www.asdfghjkl.com/qwerty.png" style="display:none" />​

它仍然加载了图像,并且可能缓存了404命中。

当您运行任何javascript从DOM中删除图像时,图像标记已经被解析,加载图像URL的请求至少已经排队,并且可能已经发送

如果移除图像标记时图像加载尚未完成,浏览器是否足够智能以中止图像加载将是特定于浏览器的行为。它甚至可能已经完成了

您应该认识到,在解析DOM之前,javascript无法修改DOM。这意味着像图像标签这样的东西在你有机会用javascript修改它们之前已经被设置好了。这只是浏览器设计的一个事实或限制

如果您控制HTML,并且有时希望在该位置使用不同的图像,那么最好不要将图像标记放在HTML中。当代码运行并确定需要哪个图像时,它可以创建适当的图像标记并将其插入DOM。然后,浏览器将不会花费任何时间加载您不想要的图像


如果您不在乎是否加载了一个额外的图像,只想在设置正确的图像之前确保它没有显示错误的图像,那么将图像标记为
display:none
visibility:hidden
,直到您确保正确的img URL已就位,然后才能使其可见。CSS在分析标记之前进行处理,因此在创建标记时应用CSS。

当任何javascript运行以从DOM中删除图像时,图像标记已经被分析,加载图像URL的请求至少已经排队,并且可能已经发送

如果移除图像标记时图像加载尚未完成,浏览器是否足够智能以中止图像加载将是特定于浏览器的行为。它甚至可能已经完成了

您应该认识到,在解析DOM之前,javascript无法修改DOM。这意味着像图像标签这样的东西在你有机会用javascript修改它们之前已经被设置好了。这只是浏览器设计的一个事实或限制

如果您控制HTML,并且有时希望在该位置使用不同的图像,那么最好不要将图像标记放在HTML中。当代码运行并确定需要哪个图像时,它可以创建适当的图像标记并将其插入DOM。然后,浏览器将不会花费任何时间加载您不想要的图像

如果您不在乎是否加载了一个额外的图像,只想在设置正确的图像之前确保它没有显示错误的图像,那么将图像标记为
display:none
visibility:hidden
,直到您确保正确的img URL已就位,然后才能使其可见。CSS在分析标记之前进行处理,因此在创建标记时应用CSS

  • 我不确定您在问什么,但您将在dom中加载
    img
    ,浏览器将获取它,即使它的
    显示:none
    。 (并非所有浏览器都如此,但这是在幻灯片中缓存图像的方法)

  • 此外,一旦您将其加载到dom中,无论您如何删除它,它都会出现在缓存中

  • 我不确定您在问什么,但您将在dom中加载
    img
    ,浏览器将获取它,即使它的
    显示:none
    。 (并非所有浏览器都如此,但这是在幻灯片中缓存图像的方法)

  • 此外,一旦您将其加载到dom中,无论您如何删除它,它都会出现在缓存中



  • 我相信你会得到一个丑陋的图片“找不到”图标,或者在图片应该出现的地方出现一个问号图标。你的问题和你的标题一样吗?不,这不应该发生。我有这些IMG显示:无负载。我在考虑网络延迟。@jashwant是的,我刚刚重新措辞。这不寻常吗?如果浏览器不尝试加载图像,JQuery就无法知道它是404;无论哪种方式,你都会获得网络活动。我相信你会得到一个丑陋的“未找到图像”图标,或者在图像应该出现的位置出现某种问号图标。你的问题与你的标题相同吗?不,这不应该发生。我有这些IMG显示:无负载。我在考虑网络延迟。@jashwant是的,我刚刚重新措辞。这不寻常吗?如果浏览器不尝试加载图像,JQuery就无法知道它是404;无论哪种方式,你都会获得网络活动。这并不完全正确。这就是document.onready的用途。是的,但这只是Javascript,jQuery在被告知时运行。jQuery是Javascript。您可以使用普通javascript完成JQuery所做的一切。这并不完全正确。这就是document.onready的用途。是的,但这只是Javascript,jQuery在被告知时运行。jQuery是Javascript。你可以用普通javascript做JQuery所做的一切。谢谢你,是的,我认为阻止404使用javascript的挑战很有趣。因此,我将其发布到stackoverflow,而不是仅仅尝试一下。谢谢你,是的,我认为阻止404使用javascript的挑战很有趣。所以发布到stackoverflow,而不是仅仅尝试一下。