Javascript - 搜索域后的第一个字符串

标签 javascript

我购买了一个聊天插件,只想在以下页面上显示插件符号:

https://stackoverflow.com/ zh/hello.html

https://stackoverflow.com/ fr/hello.html

但不显示它:

https://stackoverflow.com/de/hello.html

到目前为止我得到的是: 它有效,但问题是当我的域在域中其他位置包含 en 或 fr 时,聊天符号也会显示。 所以我需要检查域名后的第一个字符串是 en 还是 fr。 有人可以帮忙吗?

<script type="text/javascript">
url = window.location.href;
if( url.match(/en|fr/) ) {
document.write('<script id="sb-php-init" src="supportboard/php/sb.php">')
}
</script>

最佳答案

<强> window.location 有很多可以使用的实用属性。由于您不需要域,因此可以选择使用路径名。这将为您提供域之后的所有内容。因此,对于您的示例,路径名将返回 /en/hello.html

现在您已经有了路径,您只需忽略第一个字符并查找第一个 / ,您就拥有了第一个路径,在您的情况下将是 en

window.location.pathname.substring(1).split('/')[0]

现在您可以创建一个您想要允许的区域列表,并检查当前区域是否存在于此

关于Javascript - 搜索域后的第一个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48062003/

相关文章:

javascript - 无法理解 Javascript 数组的这种行为

javascript - Chart.js 阴影区域

javascript - 使用javascript将文本添加到文本区域

javascript - 如何将实例绑定(bind)到反转容器

javascript - 清理代码博客的输入

javascript - 我如何在 React 功能组件中生成 HTML?

javascript - Promise 不在 Typescript 中编译

javascript - 使用 javascript 预取加载外部数据集

javascript - 使用 ng-blur 进行输入验证(如果输入错误则更改背景颜色)

javascript - 在 react 代码中双重发布