我想要做的是使用window.location.href.indexOf()的变量这是我的代码,我希望能够缩短它。
var urls = [
'https://www.example.com/'
,'https://www.example2.com/'
,'https://www.example3.com/'
,'https://www.example4.com/'
,'https://www.example5.com/'
];
// if ((window.location.href.indexOf(""+urls+"") > -1) Does not work
if (
(window.location.href.indexOf("https://www.example.com/") > -1)
|| (window.location.href.indexOf("https://www.example2.com/") > -1)
|| (window.location.href.indexOf("https://www.example3.com/") > -1)
|| (window.location.href.indexOf("https://www.example4.com/") > -1)
|| (window.location.href.indexOf("https://www.example5.com/") > -1)
) {
//do stuff
}
我已经将我在代码中尝试过的内容包括在内但它不起作用。 javascript和jquery都适合我
答案 0 :(得分:3)
您需要在数组上使用indexOf
来搜索网址数组中的window.location.href
。
更改
if ((window.location.href.indexOf(""+urls+"") > -1)
到的
if (urls.indexOf(window.location.href) > -1)
答案 1 :(得分:3)
试试这样:
if (urls.indexOf(window.location.href) > -1)
而不是
if ((window.location.href.indexOf(""+urls+"") > -1)
答案 2 :(得分:3)
像这样检查
[^)]
答案 3 :(得分:2)
var href = window.location.href;
//there you need to strip params and leave only domain (https://www.example.com/index.php?q=a convert to https://www.example.com/)
//and then
if (urls.indexOf(href) > -1) {...}
答案 4 :(得分:0)
由于您已经在数组中拥有URL,因此您可以使用循环来测试URL,如下所示:
var test = false;
for(var i=0; i < urls.length; i++) {
test = test || location.href.indexOf(urls[i]) > -1;
}
if( test ) {
//do stuff
}