首页 > 解决方案 > 如果域匹配两个结果之一,你如何运行 JS/jQuery?

问题描述

我有两个域都访问完全相同的网站。

www.bothellhomes.comwww.lookinwa.realgeeks.com

如果域是这些站点中的任何一个,我希望括号之间的任何 JS 运行。下面的代码是正确的方法吗?

if (document.location.href.indexOf('bothellhomes') || ('lookinwa.realgeeks') > -1) {
}

标签: javascriptjquery

解决方案


条件需要重复,并且分开。此外,您应该使用window.location.host它,因为由于路线中的值,它不太可能得到误报:

let host = window.location.host;
if (host.indexOf('bothellhomes.com') > -1 || host.indexOf('lookinwa.realgeeks.com') > -1) {
  // do something
}

或者,您可以通过将有效域放在一个数组中并检查它来使代码更具可扩展性indexOf()

let allowedDomains = ['bothellhomes.com', 'lookinwa.realgeeks.com'];
if (allowedDomains.indexOf(window.location.host) !== -1) {
  // do something
}

请注意,根据您的 URL 路由策略,您可能还需要将www.前缀添加到数组中的 URL。


推荐阅读