我想在属于特定网址路径的每个网页上触发数字营销代码,例如example.com/sachin
目录下的sachin
。
我已经尝试if (location.href === 'example.com/sachin.*/')
,但不知何故条件似乎不起作用。
location.href
如果我想覆盖URL路径中的所有不同资源,请参阅sachin目录下的正确if条件是什么?
答案 0 :(得分:1)
我认为您要检查网址是否包含example.com/sachin。很少有任何URL会包含4个正斜杠,但你要做的就是使用indexOf。
if(location.href.indexOf("example.com/sachin/") != -1){
//Do something
}
这基本上是说,如果" example.com/sachin /"在一个不是-1的索引位置(这意味着它不存在)中找到给定字符串中的某个位置(在本例中为location.href),然后执行。
答案 1 :(得分:1)
您需要使用Regular Expressions来匹配所需的资源。
类似的东西:
if(location.href.match(/^http:\/\/example.com\/sachin\//)){
//your staff here
}
答案 2 :(得分:1)
检查网址中特定目录的另一种方法。
function urlContains(url, value) {
return ~url.indexOf(value);
}
if (urlContains(location.href, "/sachin/")) {
// found
} else {
// not found
}
indexOf方法检查字符串是否传递了值,如果未找到结果则返回-1。
您可以使用Bitwise NOT运算符== -1
将-1转换为0(falsy值,而不是检查!= -1
或~
,在javascript中,非零值被视为truthy值。