在html和javascript中设置文件src有什么区别

在html和javascript中设置文件src有什么区别,javascript,html,view,Javascript,Html,View,快速版本: 如果我做一个div,在里面放一个图像,效果就很好 this <img id="main_image"; src="~/images/tea_offer.jpg" style="width:100%; height:100%" /> gives localhost/images/tea_offer.jpg 而图像就是不起作用。我想这是localhost/home/~/images/cake.jpg。这是错误的。 请帮忙 长版本 我有一个简单的网站,它有一个背景图片和

快速版本:

如果我做一个div,在里面放一个图像,效果就很好

this 
<img id="main_image"; src="~/images/tea_offer.jpg" style="width:100%; height:100%" /> 
gives 
localhost/images/tea_offer.jpg
而图像就是不起作用。我想这是localhost/home/~/images/cake.jpg。这是错误的。 请帮忙

长版本

我有一个简单的网站,它有一个背景图片和一个蓝色的盒子。单击蓝色框时,背景图像会发生变化。图像本地存储在wwwroot中。 单击蓝色框时,背景图像会变为白色,我的计算机无法找到它要查找的图像

如何让javascript像html一样查找图像?

在javascript版本中,不要在路径中添加“~”,而是使用“/”so it be“/images/cake.jpg”从根目录进行查询

更多信息:

更新信息:

  • 您需要提供到映像的绝对链接(这与DEV env不同,DEV env可能是localhost:80,而不是发布的Prod env http:..com/)。因此,最好将BASE_URL放在一个静态变量中,并在所有对图像的调用之前添加它

“映像无法工作”-因为没有服务器将
~
转换为实际路径。但是映像是本地的。如果我不使用~/i,在localhost之后仍然以/home开头,这使得添加内容到wwwroo变得不可能。您可以使用
。/
向上移动一个文件夹,如果absolutes不适合您,请尝试使用相对路径。为什么您认为
~
始终是根?是相对根,如果是已发布的网站,则是相对根http://.....com/ 虽然,现在我不是100%确定。。我查一查
this
document.getElementById("main_image").src = "images/cake.jpg"
gives
localhost/home/~/images/cake.jpg