是否有办法检查连接是否不可用,并在“网页不可用”浏览器消息出现之前显示警告(或任何内容),或者如果“找不到网页”,则将重定向添加到另一个页面?
答案 0 :(得分:4)
您可以使用AJAX拨打电话并查看返回状态。然后根据状态代码(例如200,404),您可以决定要执行的操作。如果使用jQuery,可以使用jQuery.ajax()方法更轻松地完成此操作。
使用jQuery
$.ajax({
statusCode: {
404: function() {
alert( "page not found" );
}
}
});
Pure JS:
function checkUrl(url) {
var request = false;
if (window.XMLHttpRequest) {
request = new XMLHttpRequest;
} else if (window.ActiveXObject) {
request = new ActiveXObject("Microsoft.XMLHttp");
}
if (request) {
request.open("GET", url);
if (request.status == 200) { return true; }
}
return false;
}
资源:
答案 1 :(得分:1)
你必须在页面加载之前检查,所以你应该这样做......
$.ajax({
type: 'HEAD',
url: 'http://domainname.com/pagename.php',
success: function() {
// no 404 error
},
error: function() {
// error in HEAD (404 etc)
}
});