JavaScript:完成自己网站的相对 URL

标签 javascript url

是否有更好的方法来编写此过程来完成我的网站的相对网址?

if (!url.startsWith('http')) {
     url = + location.protocol + '//' + location.host + (url.startsWith('/') ? '' : '/') + url 
});

最佳答案

您可能需要考虑让服务器端提供您网站的基本 URL。原因是,通常更容易访问服务器上站点的基本 URL。您需要做的就是拥有一个服务器端脚本/操作来生成如下所示的脚本:

var siteBaseUrl = 'http://example.com/';

// use string replacement to remove any leading slash on the incoming url.
function makeAbsoluteUrl( url )
{
    if (!url.match(/^http/)) {
        url = siteBaseUrl + url.replace(/^\//,'');
    })
    return url;
}

您可以在网页中将其引用为:

<script type="text/javscript" src="/scripts/baseUrl.php"> // adjust for platform
</script>

并将其用作

url = makeAbsoluteUrl( url );

关于JavaScript:完成自己网站的相对 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2216856/

相关文章:

javascript - 将动态大小的 div 居中

javascript - 在javascript中删除字符串或数字的最后3个字符

Javascript 按钮和 document.location

php - Wordpress URL 不返回 404 页面

java - 如何通过 https 从受密码保护的 URL 下载目录?

java - 通过abs解析相对图像URL失败

javascript - 使用 json 构建下拉列表

javascript - vue自定义导入css(sass)文件

javascript - 在传单热图中的层之间交换

asp.net-mvc-3 - Quora 如何找到正确的资源来请求 url slug?