网速测试的方法很多很多,有纯javascript实现,有asp+js实现,有php+js实现,还有通过FTP来实现的。
不管通过什么方式,一般都是通过下载一个文件,然后用文件的大小除以所耗时间,就是你的本地网络速度了。
这里介绍的是一个最常被使用的,又是最简单的方法。
js实现代码如下:
<SCRIPT language=JavaScript>
document.write("<div id='div1'>正在下载测速图片,请稍后...</div>");
var Rand = Math.random();
var RandNum = 1 + Math.round(Rand * 99);
var szsrc = "http://hongkong2.bandwidthplace.com/static/4096.jpg?id="+RandNum;
var st = new Date();
document.write(" <IMG height=300 alt=测试图片 src='"+szsrc+"' width=400 onload=showspeed() >");
function showspeed()
{
var fs = 1.46*1024; //图片文件大小(KB)
var l = 2; //小数点的位数
var et = new Date();
alltime = fs*1000/(et - st)
Lnum = Math.pow(10,l)
calcspeed = Math.round(alltime*Lnum)/Lnum
document.getElementById("div1").innerHTML = "您的下载速度为:"+calcspeed+" (KB/秒) 约" + Math.round(calcspeed/128*Lnum)/Lnum + "(MB/秒)";
}
</SCRIPT>把以上代码拷贝到txt文件里,然后把txt文件保存为html文件,就可以看到测速效果了。
它的实现原理是,通过下载一张远程的图片,然后用js计算,计算公式是:文件大小/下载时间。
点击看看效果吧,测试3-5次,看看是不是很准呢!