簡體   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