Javascript location.href和页的回退不可用

Javascript location.href和页的回退不可用,javascript,Javascript,当我用javascript重新加载页面时,如果目标页面不可用,有没有一种方法可以让我有一个回退 示例: 我在做什么 location.href=http://www.google.com' 但是,也许谷歌已经关闭(或者url不再存在或者格式不正确等等),在这种情况下,我希望避免重新加载。可能吗 你无法识别访问者离开你的页面后会发生什么。这是一件好事。也许你在重定向之前检查一下,如果网站可用,你是否可以用javascript连接(客户端),然后执行重定向。但您必须在重定向之前进行检查,但不能在重

当我用javascript重新加载页面时,如果目标页面不可用,有没有一种方法可以让我有一个回退

示例:

我在做什么

location.href=http://www.google.com'


但是,也许谷歌已经关闭(或者url不再存在或者格式不正确等等),在这种情况下,我希望避免重新加载。可能吗

你无法识别访问者离开你的页面后会发生什么。这是一件好事。也许你在重定向之前检查一下,如果网站可用,你是否可以用javascript连接(客户端),然后执行重定向。但您必须在重定向之前进行检查,但不能在重定向之后进行检查作为后备。

如果它位于同一域上,您可以在
位置之前使用Ajax使用HEAD请求。href
,如:

function doStuff() {
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function() {  
    if(this.readyState == 4 && this.status == 200) {
        //page exists 
        location.href = "your_url_of_some_page";               
    }
    xhr.open("HEAD", address);
    xhr.send();
}
//call the function
doStuff();

一个棘手的解决方案是在之前发出AJAX请求,如果成功,然后导航到URL。如果它在同一个域上,您可以在location.href thing.之前使用AJAX使用HEAD请求。。!如果它不在同一个领域,那么我不认为它可以做到。我正在寻找一个解决方案,为任何领域(如果可能的话)。