这就是我想要解决的......
这是我的javascript不完整,但最终我正在努力解决...
var locaz=""+window.location;
if (locaz.indexOf("mydomain.com") >= 0) {
var relLoc = [
["/foldername/index.htm"],
["/foldername/"]
];
window.location = "http://www.example.com";
}
这是为了管理某些用户根据书签等特定方式点击的URL。在不删除页面的情况下,我们希望在采取进一步行动之前监控有多少人访问该页面。
答案 0 :(得分:1)
页面是否始终位于同一个域中,如果网址包含/foldername/pagename.htm
,它是否也会包含/foldername
?因此&&
检查会有多余的。
请尝试以下代码。
var path = window.location.pathname;
if ( (path === '/foldername' || path === '/foldername/index.html') && !window.location.search ) {
alert('should redirect');
} else {
alert('should not redirect');
}
答案 1 :(得分:0)
var url = window.location;
var regexDomain = /mydomain\.com\/[a-zA-Z0-9_\-]*\/[a-zA-Z0-9_\-]*[\/\.a-z]*$/
if(regexDomain.test(url)) {
window.location = "http://www.example.com";
}
答案 2 :(得分:0)
熟悉location对象。它提供了pathname
,search
和hostname
作为属性,让您免于RegExp麻烦(无论如何,您最喜欢get wrong)。您正在寻找以下内容:
// no redirect if there is a query string
var redirect = !window.location.search
// only redirect if this is run on mydomain.com or on of its sub-domains
&& window.location.hostname.match(/(?:^|\.)mydomain\.com$/)
// only redirect if path is /foldername/ or /foldername/index.html
&& (window.location.pathname === '/foldername/' || window.location.pathname === '/foldername/index.html');
if (redirect) {
alert('boom');
}