现代浏览器都是单线程的(谷歌Crhome自称是多线程的,偶也没有实验过),所以JS脚本中没有sleep这个函数.事实上如果有的话,暂停时就会出现浏览器假死的现象,例如按钮,Flash没有反应,所有对象都会静止.这里使用JS调用java applet内置的sleep方法实现暂停功能,而且不会出现假死的现象(真不知道是怎么实现的)
微软太不是东西了,XP以后,IE中默认没有打开java applet控件,即是打开也是1.1的老版本.在此在此咒骂一下微软的垄断为WEB开发带来的灾难.Firefox中不存在这个问题.我现在已经几乎不再用IE了
首先我们建立一个文本文件后缀名改为JsSleep.java,内容写为:
public class JsSleep extends java.applet.Applet{
public void sleep(int ms){
try{
Thread.sleep(ms);
}catch(Exception e){
}
}
}
可以看出,类只有一个函数sleep.JS只要调用这个函数就可以了.
编译一下.生成JsSleep.class
建立一个HTML文件,引入这个.class
-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
sleep测试function sleep(ms){
document.getElementById(‘sleepapp’).sleep(ms);
}
function test(){
setInterval(“document.getElementById(‘testdiv’).innerHTML++”, 20);
sleep(2000);
alert(‘hehe’);
}
测试一下,OK了