javascript中相对路径和绝对路径的区别

Raj*_*har 50 html javascript css

有一点澄清,

据我所知,这些是相对和绝对的路径,

Completely relative: <img src="kitten.png"/>   
Absolute in all respects: <img src="http://www.foo.com/images/kitten.png">
Run Code Online (Sandbox Code Playgroud)

相对路径和绝对路径有什么区别?

使用这些路径是否存在任何性能问题?

我们会为这些网站获得安全保障吗?

有没有办法将绝对路径转换为相对路径

小智 54

引用根目录的路径称为绝对路径.引用当前目录的路径称为relative.

  • 连击/更快相对还是绝对? (2认同)

Que*_*tin 44

相对路径和绝对路径有什么区别?

必须根据另一个URI计算一个.另一个没有.

使用这些路径是否存在任何性能问题?

没什么重要的.

我们会为这些网站提供安全保障吗?

没有

有没有办法将绝对路径转换为相对路径

非常简单的术语:从左到右工作,尝试匹配方案,主机名,然后使用您尝试相对的URI匹配路径段.当你有比赛时停止.

  • @EricB - 在使用描述链接的HTML加载页面时,性能差异很重要,而不是在解析链接时.传输级别的gzip压缩可能会消除差异.在一个页面中拥有1,000,000个链接会使它成为一个非常愚蠢的页面. (7认同)

小智 27

完全相对:

<img src="kitten.png"/>
Run Code Online (Sandbox Code Playgroud)

这确实是一条相对的道路.

绝对在所有方面:

<img src="http://www.foo.com/images/kitten.png"/>
Run Code Online (Sandbox Code Playgroud)

这是一个URL,它可以在某种程度上被视为绝对路径,但它不代表这个问题.

相对路径和绝对路径之间的区别在于,当使用相对路径时,您将当前工作目录作为参考,而使用绝对路径时,您将引用某个已知的目录.当您创建一些必须使用某些文件夹中的资源的程序时,相对路径非常有用,这些文件夹可以使用工作目录作为起点打开.

相对路径的示例:

  • image.png,相当于.\image.png(在Windows中)或./image.png(在任何其他地方).在.明确指定要相对于当前工作目录的路径表达,但每当路径,这是暗示不会在根目录下(以斜线表示)开始,所以你不必一定使用它(除非在某些情况下应用默认目录(或要搜索的目录列表),除非您明确指定某个目录).

  • ..\images\image2.jpg  这样,您可以从文件夹树中一步到目录中访问资源.将..\意味着你已经退出当前文件夹,进入同时包含工作和目录images文件夹.再次,\在Windows和/其他任何地方使用.

绝对路径的示例:

  • D:\documents\something.doc
  • E:\music\good_music.mp3

等等.


Meh*_*hdi 9

想象一下,你打开了一个窗口http://www.foo.com/bar/page.html 在所有这些窗口中(HTML,Javascript和CSS):

opened_url = http://www.foo.com/bar/page.html
base_path = http://www.foo.com/bar/
home_path = http://www.foo.com/
/kitten.png = Home_path/kitten.png
kitten.png = Base_path/kitten.png
Run Code Online (Sandbox Code Playgroud)

在HTML和Javascript中,base_path基于打开的窗口.在大型JavaScript项目中,您需要一个BASEPATH或多个root变量来偶尔存储base_path.(像这样)

在CSS中,打开的URL是存储或加载.css的地址,在这种情况下,它与当前打开的窗口的javascript不同.

为了在绝对路径中更安全,建议使用//而不是http://将来可能的迁移https://.在您自己的示例中,以这种方式使用它:

<img src="//www.foo.com/images/kitten.png">
Run Code Online (Sandbox Code Playgroud)


N J*_*N J 8

相对路径

相对路径假定文件位于当前服务器上.通过使用相对路径,您可以离线构建站点并在上载之前对其进行全面测试.

例如:

php/webct/itr/index.php

.

绝对路径

绝对路径是指使用其完整URL在Internet上的文件.绝对路径可以准确地告诉浏览器去哪里.

例如:

http://www.uvsc.edu/disted/php/webct/itr/index.php

绝对路径更易于使用和理解.但是,在您自己的网站上这不是一个好习惯.首先,使用相对路径允许您离线构建站点并在上载之前对其进行全面测试.如果您要使用绝对路径,则必须在上传代码之前更改代码才能使其正常工作.如果您不得不移动您的网站或更改域名,也会出现这种情况.

参考:http://openhighschoolcourses.org/mod/book/tool/print/index.php?id = 12503