2011-09-23 64 views
0

我希望“example.com/index.htm”中的人员重定向到“example.com”。 但代码很棘手。它总是把我带到一个循环。重定向到同一网站,但链接不同(javascript)

<script type="text/javascript"> 
function check() 
{ 
if (window.top!="example.com") 
{ 
    window.location="http://example.com"; 
}else {} 
}</script> 
+0

肯定它将作为'index.htm'是默认的页面,当你访问'mysite.com'浏览器真正得到'mysite.com/index。 htm'所以确定有一个无限的重定向循环。 – TheVillageIdiot

+1

你应该在Web服务器级别上使用重写条件来做到这一点。 – sdolan

回答

0
<script type="text/javascript"> 
function check() 
{ 
if (window.top.location.href!="http://mysite.com") 
{ 
window.top.location.href="http://mysite.com"; 
}else {} 
}</script> 

您需要使用位置对象,它需要实际匹配。

0

给此一去(未经测试):

$(function() { 

    var reg = /index.htm/g, 
     top = window.location.href, 
     loc = ''; 

    if(reg.test(top)) { 

     top = top.replace('http://',''); 
     top = top.split('/'); 

     for(i=0;i<top.length-1;i++) { 
      loc = loc + top[i]; 
     } 

     window.location.href = 'http://' + loc; 
    } 

}); 
相关问题