关于路径:javascript网站根目录

javascript site root

我有这个网站,我需要找到根文件夹/加上其工作所在的实际文件夹。

我的问题是在开发过程中,我的本地服务器中包含该文件夹,而该文件夹又位于其自己的文件夹中:

然后在线,然后将开发站点放在一个文件夹中,这样就可以在进行现场制作之前对它们全部进行测试。

本地服务器:
本地主机/ mytestSiteA / ...

实时服务器测试文件夹:
www.asite.com/devbuild / ....

现在我可以通过

检索根了

1
    document.location.hostname

但是我需要在此之后添加文件夹名称,以便在处于开发模式时可以加载内容等。

本地服务器

1
 document.location.hostname + '/mytestSiteA/'

现场测试站点

1
 document.location.hostname + '/devbuild/'

但是我的问题是,是否有一种简单的方法来获取此内部文件夹,而不是设置由本地开发人员,实时开发人员或实时模式确定的变量,这可能会很痛苦,并且很容易获得当前的内部文件夹,而不是手动更改等,以便我可以正确添加路径。

如果我在其中也有一个文件夹也可以在js脚本中加载它也会获得其完整路径,这也会有所帮助。

本地服务器:
本地主机/ mytestSiteA / subsection / ...

实时服务器测试文件夹:
www.asite.com/devbuild/subsection / ...

我希望我已使它变得易于理解和理解。


尝试switch

1
2
3
4
5
6
7
8
switch (document.location.hostname)
{
        case 'asite.com':
                          var rootFolder = '/devbuild/'; break;
        case 'localhost' :
                          var rootFolder = '/mytestSiteA/'; break;
        default :  // set whatever you want
}

,然后使用

1
var root = document.location.hostname + rootFolder;

这是switch子句之后对我有用的东西。

1
var root = location.protocol + '//' + location.host + rootFolder;

您可以将URL localhost / devbuild映射到localhost / mytestSiteA并使用第一个URL在本地测试您的站点。在您的JavaScript中,您始终可以假定devbuild文件夹。这样一来,您无需更改其他任何内容。


使用相对路径,因此您无需进入根文件夹

这不适用于链接中带有文件夹的友好URL的网站