- function getXMLHttpRequest(){
- var client = getXMLHttpRequestFromIE();
- if(client == null){
- client = new XMLHttpRequest();
- }
- return client;
- }
- function getXMLHttpRequestFromIE(){
- var namePrefixes = ["Msxml3","Msxml2","Msxml","Microsoft"];
- for(var i = 0; i < namePrefixes.length; i++){
- try{
- var name = namePrefixes[i] + ".XMLHTTP";
- return new ActiveXObject(name);
- }catch(e){
- }
- }
- return null;
- }
- var client = null;
- //是否可以访问
- var isRun = false;
- //返回值
- var stateString="";
- //请求url的网站
- function connUrl(url){
- client = getXMLHttpRequest();
- var actionURL = convertURL(url);
- try{
- client.open("GET", actionURL, true);
- client.onreadystatechange = callBack;
- client.send(null);
- }catch(e){}
- finally{
- }
- }
- function callBack(){
- if(client.readyState == 4){
- stateString = client.responseText;
- if(stateString && client.status==200)
- isRun = true;
- }
- }
- //是否可达
- function isReach(url){
- connUrl(url);
- return isRun;
- }
- //给url地址增加时间戳,骗过浏览器,不读取缓存
- function convertURL(url) {
- //获取时间戳
- var timstamp = (new Date()).valueOf();
- //将时间戳信息拼接到url上
- if (url.indexOf("?") >= 0) {
- url = url + "&t=" + timstamp;
- } else {
- url = url + "?t=" + timstamp;
- }
- return url;
- }
- //因为是异步,先调用,此时isRun的值是false
- isReach("http://www.baidu.com");
- //3秒钟后判断isRun的值,如果为false认为网站不可达,类似超时时间
- setTimeout(function(){
- //alert(stateString);
- //alert(isRun);
- if(isRun==true){
- document.getElementById("ceshi").innerText = "网站是通的!";
- }else{
- document.getElementById("ceshi").innerText = "网站不通!";
- }
- },3000);
function getXMLHttpRequest(){ var client = getXMLHttpRequestFromIE(); if(client == null){ client = new XMLHttpRequest(); } return client; } function getXMLHttpRequestFromIE(){ var namePrefixes = ["Msxml3","Msxml2","Msxml","Microsoft"]; for(var i = 0; i < namePrefixes.length; i++){ try{ var name = namePrefixes[i] + ".XMLHTTP"; return new ActiveXObject(name); }catch(e){ } } return null; } var client = null; //是否可以访问 var isRun = false; //返回值 var stateString=""; //请求url的网站 function connUrl(url){ client = getXMLHttpRequest(); var actionURL = convertURL(url); try{ client.open("GET", actionURL, true); client.onreadystatechange = callBack; client.send(null); }catch(e){} finally{ } } function callBack(){ if(client.readyState == 4){ stateString = client.responseText; if(stateString && client.status==200) isRun = true; } } //是否可达 function isReach(url){ connUrl(url); return isRun; } //给url地址增加时间戳,骗过浏览器,不读取缓存 function convertURL(url) { //获取时间戳 var timstamp = (new Date()).valueOf(); //将时间戳信息拼接到url上 if (url.indexOf("?") >= 0) { url = url + "&t=" + timstamp; } else { url = url + "?t=" + timstamp; } return url; } //因为是异步,先调用,此时isRun的值是false isReach("http://www.baidu.com"); //3秒钟后判断isRun的值,如果为false认为网站不可达,类似超时时间 setTimeout(function(){ //alert(stateString); //alert(isRun); if(isRun==true){ document.getElementById("ceshi").innerText = "网站是通的!"; }else{ document.getElementById("ceshi").innerText = "网站不通!"; } },3000);
- <div id="ceshi"></div>
<div id="ceshi"></div>