如果我输入src属性./images/nothing.gif这会转化为什么?
我有一个javascript文件,它将某个html元素的src属性设置为'nothing.gif'
但在页面上,nothing.gif显示为“找不到文件”符号。
目前nothing.gif位于我的ftp服务器中的以下位置:
/www/foldername/wp-content/themes/themeg/images/nothing.gif
javascript位于:
/www/darksnippets/wp-content/themes/themeg/javascript.js
因为这是wordpress,所以没有实际的“html页面”内容存储在DB中。所以,如果我使用../我应该在哪里放置nothing.gif?
编辑:
这是指向页面的链接:http://www.darksnippets.com/?page_id=56
nothing.gif可以在这里找到:http://www.darksnippets.com/wp-content/uploads/nothing.gif
在右下角,您将看到损坏的图像符号(这在Chrome的IE中显示。在FF中不显示)
答案 0 :(得分:3)
相对路径./images/nothing.gif
由浏览器解释,而不是服务器。因此,它将从浏览器的角度查看URL来解析路径。浏览器看到的网址是什么?
更新
我看到你提供了网址。将您的相对路径更改为:
./wp-content/uploads/nothing.gif
但更好的解决方案是使用根相对路径。即以/
答案 1 :(得分:0)
其中一个想法是使用图像文件的完整路径
e.g. http://www.yourdomain.com/images/nothing.gif
答案 2 :(得分:0)
我没有非常好地使用wp,我无法给出具体的答案,但一般的解决方案是使用格式“http://www.sitename.com/folder/nothing.gif”当然,sitename.com/folder被取代使用您的域名和您网站上的文件夹。
答案 3 :(得分:0)
如果您正在使用PHP编写Wordpress模板,则可以使用以下命令访问模板目录的完整路径:
bloginfo('template_directory')
或者,如果您可以通过CSS将图像设置为背景图像(而不是使用src),CSS中定义的相对图像路径将相对于CSS路径:
.nothing { background: url(images/nothing.gif); }
答案 4 :(得分:0)
如果HTML页面为http://www.darksnippets.com/?page%5Fid=56,则nothing.gif指向http://www.darksnippets.com/nothing.gif。 Javascript的位置无关紧要。所以你应该只需要“wp-content / uploads / nothing.gif”。
答案 5 :(得分:0)
正如我想的那样,在IE和Firefox中,浏览器正在寻找http://www.darksnippets.com/images/nothing.gif。相对URL是相对于www.darksnippets.com(页面的网址),而不是javascript的位置。
答案 6 :(得分:0)
Ates Goral的回答是正确的。我将扩展以解决您提出的其他问题。
在相对路径中,.
(单点)指的是当前路径。这通常是加载页面的路径(并根据您的Web服务器规则解决),除非您的页面使用的<base href="...">
与您当前的路径不同。这是因为每个加载的页面都有一个基本路径,默认为......你猜对了,.
(单点)。同样,..
(两个点)指的是当前路径的父目录(也根据Web服务器上的规则解析)。
答案 7 :(得分:0)
对于此问题,您只需从代码中删除点(。)和 / 符号即可 所以现在你的代码就像 src = images / nothing.gif
我认为这对你有用。