最近有用户建议给尊云网站分类目录增加一个网址存活检测在功能。
下面是具体的功能实现:
检测目标网址是否存活一边坚持目标网址在状态码就可以了。
网上有人 通过onerror来实现
<img src="http://www.wdphp.com" onerror="" height="0" onerror="errorurl"/>function errorurl(){
Alert("该网址无法访问");
}
但实际测试给一个不存在的网址无法正确判断
下面是我的实现方式:
<li id="site_url"><strong>网站地址:</strong><a href="https://www.wdphp.com" target="_blank" clickout="1">https://www.wdphp.com</a></li>
$("#site_url").ready(function() {
let site_url = $("#site_url a").attr('href');
$("#site_url a").after("<span style=\"color: green;\"> Testing...</span>");
$.ajax({
type: 'get',
cache: false,
url: site_url,
dataType: "jsonp",
processData: false,
timeout: 2000,
complete: function(data) {
$("#site_url span").remove();
if (data.status == 200) {
$("#site_url a").after("<span style=\"color: green;font-size: 12px;\"> 网站在线</span>")
} else {
$('a[href="' + site_url + '"]').removeAttr('href').removeAttr('target').removeAttr('clickout').removeAttr('onclick');;
$("#site_url a").html(hideurl(site_url));
$("#site_url a").after("<span style=\"color: red;\"> 网站故障或关闭</span>")
}
},
error: function() {}
})
});
演示: