zoukankan      html  css  js  c++  java
  • HTML5 Web Workers

    web worker 是运行在后台的 JavaScript,不会影响页面的性能。

    什么是 Web Worker?

    当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。

    web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行。

    浏览器支持

    Internet ExplorerFirefoxOperaGoogle ChromeSafari

    Internet Explorer 10, Firefox, Chrome, Safari 和 Opera 都支持Web workers.

    demo_workers.js 文件代码:

    var i=0;

    function timedCount()
    {
        i=i+1;
        postMessage(i);
        setTimeout("timedCount()",500);
    }

    timedCount();

    <!DOCTYPE html>
    <html>
    <head> 
    <meta charset="utf-8"> 
    <title>菜鸟教程(runoob.com)</title> 
    </head>
    <body>
    
    <p>计数: <output id="result"></output></p>
    <button onclick="startWorker()">开始工作</button> 
    <button onclick="stopWorker()">停止工作</button>
    
    <p><strong>注意:</strong> Internet Explorer 9 及更早 IE 版本浏览器不支持 Web Workers.</p>
    
    <script>
    var w;
    
    function startWorker() {
        if(typeof(Worker) !== "undefined") {
            if(typeof(w) == "undefined") {
                w = new Worker("demo_workers.js");
            }
            w.onmessage = function(event) {
                document.getElementById("result").innerHTML = event.data;
            };
        } else {
            document.getElementById("result").innerHTML = "抱歉,你的浏览器不支持 Web Workers...";
        }
    }
    
    function stopWorker() 
    { 
        w.terminate();
        w = undefined;
    }
    </script>
    
    </body>
    </html>

  • 相关阅读:
    jdk版本切换
    Java开发中遇到的问题
    递归删除文件夹
    重写equals方法
    JSP基础
    js把变量转换成json数据
    myBatista批量查询和插入
    Jquery密码强度校验
    Linux配置外网访问mysql
    linux下开启、关闭、重启mysql服务命令
  • 原文地址:https://www.cnblogs.com/ljcgood66/p/7262810.html
Copyright © 2011-2022 走看看