搜索
javascript - 在同一个setinterval中处理两个不同的事件,并控制两个事件触发的时间
大家讲道理
大家讲道理 2017-04-10 15:47:00
[JavaScript讨论组]
//生成敌机
 function buildCar(){
    var flyCar = $('<p class="flyCar"></p>');
    flyCar.appendTo($("#wrap"));
}
    setInterval(buildCar,1000);
//敌机降落
 function carLandfall(){
    var flyCarFlow = $("#wrap").find(".flyCar");
    for(var i=0;i<flyCarFlow.length;i++){
        var nowFly = $(flyCarFlow[i]);
        var currentTop = nowFly.offset().top;
        currentTop += 10;  
        nowFly.css({top:currentTop});
    }
    setInterval(carLandfall,20)

在写一个飞机大战的游戏,怎样将这两个intreval写成一个interval?在同一个interval里处理生成飞机和降落这两个事件,并且通过一个参数控制这两个事件的时间

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(1)
伊谢尔伦

给你个算法,自己想想

(function() {
    var flyTime = 0;
    var flowTime = 0;

    function flyCar() {
        // TODO 生成敌机
    }

    function flyCarFLow() {
        // TODO 降落
    }

    setInterval(function() {
        var current = new Date().getTime();

        if (current - flowTime > 20) {
            flyCarFLow();
            flowTime = current;
        }

        if (current - flyTime > 1000) {
            flyCar();
            flowTime = current;
        }
    });
})();
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号