Reputation: 1311
I have website: "http://www.example.com/folder1/mywebsite/subfolder/page.html"
Root of the site is: "http://www.example.com/folder1/mywebsite"
I would like to get root url of "mywebsite" dynamicly. If I will publish this site to another place, then I will no need to change script.
For example to: "http://www.example.com/otherFolder/test/myChangedWebsite/subfolder/page.html"
I will get: "http://www.example.com/otherFolder/test/myChangedWebsite"
I tried in "page.html" javascript: var url = window.location.protocol + "//" + window.location.host + '/otherPage.html
but this gives me only "http://www.example.com/otherPage.html".
Also I know about location.origin but this is not supported for all browser as I found that on link: http://www.w3schools.com/jsref/prop_loc_origin.asp
If it can be done with jQuery, it will be good as well.
Upvotes: 21
Views: 57249
Reputation: 1705
Use the following javascript to get the root of your url:
window.location.origin
For more details:
[https://www.codegrepper.com/code-examples/javascript/javascript+get+root+url][1]
Upvotes: 10
Reputation: 795
Here's a function doing the same as Hawk's post above, only much, much shorter:
function getBaseUrl() {
var re = new RegExp(/^.*\//);
return re.exec(window.location.href);
}
Details here: Javascript: Get base URL or root URL
Upvotes: 34
Reputation: 151
slightly shorter:
function getBaseUrl() {
return window.location.href.match(/^.*\//);
}
Upvotes: 4
Reputation: 512
if your location is fixed after mywebsite/subfolder/page.html"
then use this
location.href.split("mywebsite")[0]
Upvotes: 0