Javascript能不能判断当前计算机与指定计算机(ip)的联网状态?
推荐于2017-09-23
展开全部
$.ping = function(option)
{
var ping, requestTime, responseTime ;
var getUrl = function(url){ //保证url带http://
var strReg="^((https|http)?://){1}"
var re=new RegExp(strReg);
return re.test(url)?url:"http://"+url;
}
$.ajax({
url: getUrl(option.url)+'/'+ (new Date()).getTime() + '.html', //设置一个空的ajax请求
type: 'GET',
dataType: 'html',
timeout: 10000,
beforeSend : function()
{
if(option.beforePing) option.beforePing();
requestTime = new Date().getTime();
},
complete : function()
{
responseTime = new Date().getTime();
ping = Math.abs(requestTime - responseTime);
if(option.afterPing) option.afterPing(ping);
}
});
if(option.interval && option.interval > 0)
{
var interval = option.interval * 1000;
setTimeout(function(){$.ping(option)}, interval);
// option.interval = 0; // 阻止多重循环
// setInterval(function(){$.ping(option)}, interval);
}
};
<div id="msg"></div>
<script language="javascript" src="jquery.js"></script>
<script language="javascript" src="ping.js"></script>
<script>
$.ping({
url : 'http://www.example.com',
beforePing : function(){$('#msg').html('')},
afterPing : function(ping){$('#msg').html(ping)},
interval : 1
});
</script>
{
var ping, requestTime, responseTime ;
var getUrl = function(url){ //保证url带http://
var strReg="^((https|http)?://){1}"
var re=new RegExp(strReg);
return re.test(url)?url:"http://"+url;
}
$.ajax({
url: getUrl(option.url)+'/'+ (new Date()).getTime() + '.html', //设置一个空的ajax请求
type: 'GET',
dataType: 'html',
timeout: 10000,
beforeSend : function()
{
if(option.beforePing) option.beforePing();
requestTime = new Date().getTime();
},
complete : function()
{
responseTime = new Date().getTime();
ping = Math.abs(requestTime - responseTime);
if(option.afterPing) option.afterPing(ping);
}
});
if(option.interval && option.interval > 0)
{
var interval = option.interval * 1000;
setTimeout(function(){$.ping(option)}, interval);
// option.interval = 0; // 阻止多重循环
// setInterval(function(){$.ping(option)}, interval);
}
};
<div id="msg"></div>
<script language="javascript" src="jquery.js"></script>
<script language="javascript" src="ping.js"></script>
<script>
$.ping({
url : 'http://www.example.com',
beforePing : function(){$('#msg').html('')},
afterPing : function(ping){$('#msg').html(ping)},
interval : 1
});
</script>
更多追问追答
追问
能解释一下setTimeout(function(){$.ping(option)}, interval); setInterval(function(){$.ping(option)}, interval);
这两句到底起什么作用吗?谢谢!
追答
第一句,就是判断在一定时间之内是否能连接成功
第二句,就是在这个时间段之内,不停地去连接
浙江启扬智能科技有限公司
2023-06-12 广告
2023-06-12 广告
Android和ARM、Linux之间存在密切的联系。Android是一种基于Linux内核的嵌入式智能操作系统,它采用了ARM处理器作为其主要处理器架构。Android的内核和许多应用程序都是基于ARM架构编写的,包括处理器和内存管理器。...
点击进入详情页
本回答由浙江启扬智能科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询