Javascript 当src被动态重新定义时,浏览器是否应该自动获取图像?

Javascript 当src被动态重新定义时,浏览器是否应该自动获取图像?,javascript,image,http,dom,Javascript,Image,Http,Dom,我注意到,当图像源属性被动态更改(在我的例子中,使用jQuery)时,即使图像从未被浏览器调用/缓存(即未预加载),浏览器仍然会获取它——并且没有ajax。这在所有5种主要浏览器(ie7+)中都适用 问:这是我可以无限期依赖的正式标准化行为吗?据我所知,当您对文档对象模型(dom)进行更改时(例如使用jQuery),浏览器将自动重新呈现更改后的元素(在本例中为img) 这也发生在IE6中。DOM有两种行为称为回流和重绘,这将强制重画其元素(颜色、大小)。只要DOM中的“用于构建渲染树的输入信息”

我注意到,当图像源属性被动态更改(在我的例子中,使用jQuery)时,即使图像从未被浏览器调用/缓存(即未预加载),浏览器仍然会获取它——并且没有ajax。这在所有5种主要浏览器(ie7+)中都适用


问:这是我可以无限期依赖的正式标准化行为吗?

据我所知,当您对文档对象模型(dom)进行更改时(例如使用jQuery),浏览器将自动重新呈现更改后的元素(在本例中为img)


这也发生在IE6中。

DOM有两种行为称为回流和重绘,这将强制重画其元素(颜色、大小)。只要DOM中的“用于构建渲染树的输入信息”发生更改,就会触发这些行为(这里有一个很好的描述:)

对于你的问题,当这被触发时,浏览器也会尝试获取src链接,包括javascript;因此,我们可以动态插入脚本/样式链接,DOM将执行它

这也会影响性能。您可以想象,在CSS中,我们为不同的状态使用不同的图像,例如,当设置悬停状态的背景图像样式时。如果DOM在加载时获取所有图像,则在初始渲染时速度会较慢。因此,浏览器被设计为动态加载src