繁体   English   中英

Jquery相对和绝对路径

[英]Jquery relative and absolute path

我需要在jquery中确定这个路径,实际上我有一个名为functions.js的文件,并在这个函数内部用于加载url和jquery

问题是网站索引中的js加载和子文件夹中的文件

<script src="http://www.domain.com/wp-content/includes/themes/mytheme/js/functions.js"></script>

js在网站索引中调用它为wp-content / includes / themes / mytheme / js

并且加载jquery调用:wp-content / includes / themes / mytheme / index_loader.php

我可以在jquery中将index_loader.php的绝对路径放入,但我的问题是它是否可能没有使用它并计算到js文件的路径

实际上:

$("#test").load("http://www.domain.com/wp-content/includes/mytheme/index_loader.php");

有可能这个或在jquery文件里面计算? - 我试着没有作品......

$("#test").load("../index_loader.php");

这真是我的问题,感谢您的问候

JavaScript的工作方式,它从它调用的文件加载,现在是它写入的文件。

为了满足您的需要,您需要提供您正在查看的当前页面的相对路径。

例:

如果当前页面是http://www.domain.com,那么您需要执行以下操作:

$("#test").load("wp-content/includes/mytheme/index_loader.php");

如果当前页面是http://www.domain.com/wp-content/index.php,那么您需要执行以下操作:

$("#test").load("includes/mytheme/index_loader.php");

作为旁注,CSS的方式不一样,CSS相对路径基于它所写的文件。

这是非常晚了...
但我正在使用这种方法,我只是在这里添加它,以防将来有人需要它:
尝试从不同URL(网站的不同部分)中存在的页面使用相同的加载语句时遇到此问题

你可以使用location js变量

location返回当前路径
例如wwww.blog.mysite.com/posts/postn25/comment64

location.origin返回域和主机(因此站点的根目录)
对于以前的URL,它将是
wwww.blog.mysite.com/posts/postn25/comment64

所以当你这样做

$('#my_tag').load(`${location.origin}/mypath/mypage`)

它将始终从根目录开始查找/mypath/mypage ,因此即使域更改它仍然有效

PS :(无关)我今天发现你可以使用> *来加载另一个标签内的所有内容,例如:

$('#my_tag').load(`${location.origin}/mypath/mypage #my_tag > *`)

会将/mypath/mypage中存在的#my_tag中的所有HTML加载到当前页面的#my_tag中

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM