关于使用 new Image() 创建 <img>时候,浏览器会不会添加前缀的问题解释

关于使用 new Image() 创建 时候,浏览器会不会添加前缀的问题解释


浏览器会根据当前页面的协议(http 或 https)自动添加默认的前缀。
如果你的图片链接已经包含了自己的前缀(例如 http://example.com/images/example.jpg),浏览器不会再添加默认的前缀。

举个例子:
如果你的网站是使用 http 协议访问的,而你的图片链接是 http://example.com/images/example.jpg,那么浏览器不会再添加 http 前缀;
如果你的网站是使用 https 协议访问的,而你的图片链接是 https://example.com/images/example.jpg,浏览器也不会再添加 https 前缀。

因此,
如果你的图片链接已经包含了自己的前缀,你无需担心浏览器会再添加默认的前缀,只需将正确的图片链接赋值给 img.src 属性即可。


当使用 let img = new Image() 创建的 元素时,
它的 src 属性会自动将相对路径转换为绝对路径,
这是浏览器的默认行为,浏览器会根据当前页面的 URL 来自动添加前缀。

举例子:
当你设置 img.src = "manjing.myqcloud.com/ticket/20231099566415852b17d0a9cb49.jpg" 时,
浏览器会将其转换为相对于当前页面的绝对路径,即 http://192.168.1.140:8101/manp-nanjing.myqcloud.bf9900799566415852b17d0a9cb49.jpg

因此,你可以直接使用相对路径来设置 元素的 src 属性,浏览器会自动添加正确的前缀,无需手动添加 http://192.168.1.140:8101 前缀。

你可能感兴趣的:(javascript,html5)