如何使用javascript在asp.net中获得互联网带宽速度? [英] How to get internet bandwidth speed in asp.net using javascript?

查看:69
本文介绍了如何使用javascript在asp.net中获得互联网带宽速度?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用javascript在asp.net中获得互联网带宽速度?

解决方案

参考



http://codecanyon.net/item/javascript-bandwidth-tester/531891 [ ^ ]


试一试:



  var  imageAddr =   http://www.testapplication.com/images/31120037-5mb.jpg; 
var downloadSize = 4995374 ; // bytes

window.onload = function(){
var oProgress = document.getElementById( progress< /跨度>);
oProgress.innerHTML = 正在加载图片,请稍候...;
window.setTimeout(MeasureConnectionSpeed, 1 );
};

函数MeasureConnectionSpeed(){
var oProgress = document.getElementById( progress);
var startTime,endTime;
var download = new Image();
download.onload = function(){
endTime =( new Date())。getTime();
showResults();
}

download.onerror = function(err,msg){
oProgress.innerHTML = 图片无效或下载错误;
}

startTime =( new Date())。getTime();
var cacheBuster = ?nnn = + startTime;
download.src = imageAddr + cacheBuster;

函数showResults(){
var duration =(endTime - startTime)/ 1000 ;
var bitsLoaded = downloadSize * 8 ;
var speedBps =(bitsLoaded / duration).toFixed( 2 );
var speedKbps =(speedBps / 1024 )。toFixed( 2 );
var speedMbps =(speedKbps / 1024 )。toFixed( 2 );
oProgress.innerHTML = 您的连接速度为:< br /> +
speedBps + bps< br /> +
speedKbps + < span class =code-string>
kbps< br /> +
speedMbps + Mbps< br />;
}
}









想法是带有已知文件大小的加载图像,然后在其onload事件中测量在触发该事件之前经过的时间,并将此时间除以图像文件大小。





参考:如何在Javascript中检测互联网速度?


How to get internet bandwidth speed in asp.net using javascript?

解决方案

Refer

http://codecanyon.net/item/javascript-bandwidth-tester/531891[^]


Try this :

var imageAddr = "http://www.testapplication.com/images/31120037-5mb.jpg"; 
var downloadSize = 4995374; //bytes

window.onload = function() {
    var oProgress = document.getElementById("progress");
    oProgress.innerHTML = "Loading the image, please wait...";
    window.setTimeout(MeasureConnectionSpeed, 1);
};

function MeasureConnectionSpeed() {
    var oProgress = document.getElementById("progress");
    var startTime, endTime;
    var download = new Image();
    download.onload = function () {
        endTime = (new Date()).getTime();
        showResults();
    }
    
    download.onerror = function (err, msg) {
        oProgress.innerHTML = "Invalid image, or error downloading";
    }
    
    startTime = (new Date()).getTime();
    var cacheBuster = "?nnn=" + startTime;
    download.src = imageAddr + cacheBuster;
    
    function showResults() {
        var duration = (endTime - startTime) / 1000;
        var bitsLoaded = downloadSize * 8;
        var speedBps = (bitsLoaded / duration).toFixed(2);
        var speedKbps = (speedBps / 1024).toFixed(2);
        var speedMbps = (speedKbps / 1024).toFixed(2);
        oProgress.innerHTML = "Your connection speed is: <br />" + 
           speedBps + " bps<br />"   + 
           speedKbps + " kbps<br />" + 
           speedMbps + " Mbps<br />";
    }
}





the idea is load image with a known file size then in its onload event measure how much time passed until that event was triggered, and divide this time in the image file size.


Hi,

Ref : How to detect internet speed in Javascript?


这篇关于如何使用javascript在asp.net中获得互联网带宽速度?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆