需求主要是限時(shí)內(nèi)連不通服務(wù)器就要發(fā)現(xiàn)并做相應(yīng)的處理,不能死等鏈接超時(shí)。用圖片實(shí)現(xiàn):
<HTML>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
var timeout=200;
function checkConnection(url){
var i=new Image();
i.timer=setTimeout(function(i){
return function(){
i.onload=i.onerror=null;
document.getElementById("output").innerHTML+=i.src+"無法在"+timeout+"毫秒內(nèi)響應(yīng)<br>"
i.src="about:blank";
}
}(i),timeout);
i.onerror=i.onload=function(){
return function(){
clearTimeout(i.timer);
document.getElementById("output").innerHTML+=i.src+"可以在"+timeout+"毫秒內(nèi)響應(yīng)<br>"
}
}(i);
i.src=url;
}
checkConnection("http://www.google.cn")
checkConnection("http://www.google.com")
checkConnection("http://www.google.tw")
checkConnection("http://www.google.hk")
checkConnection("http://www.google.kr")
checkConnection("http://www.google.au")
//-->
</SCRIPT>
<div id="output"></div>
</BODY>
</HTML>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
var timeout=200;
function checkConnection(url){
var i=new Image();
i.timer=setTimeout(function(i){
return function(){
i.onload=i.onerror=null;
document.getElementById("output").innerHTML+=i.src+"無法在"+timeout+"毫秒內(nèi)響應(yīng)<br>"
i.src="about:blank";
}
}(i),timeout);
i.onerror=i.onload=function(){
return function(){
clearTimeout(i.timer);
document.getElementById("output").innerHTML+=i.src+"可以在"+timeout+"毫秒內(nèi)響應(yīng)<br>"
}
}(i);
i.src=url;
}
checkConnection("http://www.google.cn")
checkConnection("http://www.google.com")
checkConnection("http://www.google.tw")
checkConnection("http://www.google.hk")
checkConnection("http://www.google.kr")
checkConnection("http://www.google.au")
//-->
</SCRIPT>
<div id="output"></div>
</BODY>
</HTML>