我有以下代码,除了它还捕获同一域上的子域外,它的效果很好。例如,如果在example.ca上,我想转到sub.example.ca它不会让我。我知道该网站在技术上有所不同,但我不需要这些页面的警告。
同样在网站sub.example.ca(因为它使用大多数相同的文件)触发每个内部链接,因为内部链接现在是sub.example.ca,这真的很烦人。
我可以使用旁路变量但不想将其添加到我创建的每个菜单和页面中。懒惰是最好的。哈哈。
$(document).ready(function() {
$("a").click(function() {
var href = this.href;
var ourDomainRegex = /^https?:\/\/(www[.])?example[.]ca/;
// those seeking flexibility, consider this:
// new RegExp('^https?:\\/\\/(www[.])?' + ourDomain)
if (href.indexOf("http") === 0 && ! ourDomainRegex.test(href) )
{
if($(this).attr('rel')!='pass') {
this.href = "/leave.php?p=" + href;
}
}
});
});
我将如何让它为子域工作。谢谢!
答案 0 :(得分:0)
您可以使正则表达式允许任何子域:
/^https?:\/\/([a-z0-9-]+[.])*example[.]ca/