由于IMG元素中SRC属性的值未初始化,避免了多个GET请求



我有一个带有src属性的img元素

<a><img src="{imgSrc}" alt="Image"></a>

imgSrc的值是在页面加载后发生某个用户引发的事件时动态生成的。我的问题是,当页面加载时,会有一堆GET请求被发送到服务器,因为URL有许多带有imgSrc的src属性,并且正如预期的那样,它们会返回404个错误,因为当时没有构造imgSrc

我的问题是,当imgSrc变量没有填充图像URL时,是否有任何方法可以确保请求不会发送到服务器。

其他详细信息:

  1. 这是由其他人完全开发的web应用程序,我正在修复其中的缺陷
  2. 开发人员设计应用程序的方式是,几乎所有src属性的URL都有变量,并在页面加载时加载,但URL值仅在特定事件发生时生成

不幸的是,一旦设置了img节点元素的src属性,浏览器就会尝试下载该属性中指定的资源。

即使img元素没有插入到DOM中,也会发生这种情况!它们只需要从HTML字符串转换为当前文档上下文中的节点元素(但不一定是DOM)。

因此,如果您无法在浏览器解析HTML字符串之前对其进行操作,那么您绝对无法阻止它尝试获取资源。

一个愚蠢的解决方法是提供一个具有确切名称的伪图像(比如透明的1px*1px?),这样浏览器就会很高兴并停止请求它…

如果这是一个选项,您可以尝试替换整个img标记(而不仅仅是其src值)。但是,您需要一种方法来隐藏占位符文本,以便用户在用实际的img标记替换它之前看不到它。

祝你好运!

最新更新