2015-12-17 31 views
0

我注意到,在HTML中,图像源始于我的页面位置(基底)所在的位置。所以,如果我的图片或图像是在另一个文件夹,我可以短手SRC说以下内容:HTML vs Javascript ..文件路径图像如何工作?

<img src="avatars/dwarf14.jpg"> 

不过我在javascript注意到,我不能做同样的事情。我必须输入我的整个C目录才能找到相同的图像。为什么是这样?我认为我的图像路径的起始位置将是我的JavaScript文件所在的位置。

dom.el("playeravatar").innerHTML = '<img src="C:/Users/Q/Desktop/Gaming Project/avatars/warrior4.jpg">'; 
+0

我认为你在这里混淆客户端(浏览器)和服务器。我认为你的错误是你没有配置你的Web服务器指向图像文件夹。 –

+0

请注意,前导斜杠表示绝对值相对值。 'avatars/img.jpg'与'/ avatars/img.jpg'不一样。 – Phix

回答

2

脚本只是增加了一个img标签的DOM。然后浏览器将解析这个标签,就像硬编码或通过任何其他方式添加的标签。如何将src属性解释为与javascript无关。

由于这个原因,在javascript文件所在的位置没有兴趣。您的路径应该与您插入图像的文档相关。

0

没有它不是你的图像路径起始位置的case.The将是HTML页面里的.js文件加载:)

0
<img id='img' src='img.jpg' style="max-height: 200px; max-width:200px" /> <br /> 
<img id='imgJS' style="max-height: 100px; max-width:100px" /> <br /> 
<div id='divJS' /> 
<script type="text/javascript"> 
    document.getElementById('imgJS').src = 'img.jpg'; 
    document.getElementById('divJS').innerHTML = '<img src="img.jpg" style="max-height: 50px; max-width:50px" /> <br />'; 
</script> 

我能够从JavaScript加载图像。上面的代码在img标签上设置了相同的图像,并在div标签内添加了一个新的img标签,并使用不同的尺寸进行区分。将此代码和图像放在同一个文件夹中,它可以工作。

大卫给了一个恰当的解释。 DOM处理路径,并且与文档相关,而不是JavaScript文件。

相关问题