new- 在js中引入movieClip后 button点击事件里的for循环失效!

问题描述

在js中引入movieClip后 button点击事件里的for循环失效!
/**
 * Created by Administrator on 2015/5/27.
 */
var stage,image,btn1,btn2;
var image_x = 200;
var image_y = 20;
var step_x;
var step_y;
var arr_x_r = [];
var arr_x_l = [];
var arr_y = [];
var arry = [];
window.onload = function(){
    stage = new createjs.Stage("mycanvas");
    btn1 = document.getElementById("btn1");
    btn2 = document.getElementById("btn2");
    image = new createjs.Shape();
    image.graphics.beginFill("#123F56").drawRect(image_x,image_y,50,50);
    stage.addChild(image);

    var mc = new createjs.MovieClip(null,0,true,{start:0});
    stage.addChild(mc);

    for(var i = 0;i<5;i++) {
        arry[i] = new createjs.Shape();
        step_x = Math.random()*(300-50)+50;
        step_y = 70*(i+1);
        arry[i].graphics.beginFill("#12fF56").drawRect(step_x, step_y, 100, 20);
        arr_x_r[i] = step_x+100;
        arr_x_l[i] = step_x-50;
        arr_y[i] = step_y;
        stage.addChild(arry[i]);
    }

    var n = 0;
    var l = 0;

    for (var i = n; i < 5; i++) {
        if (image_x < arr_x_r[i]&&image_x>arr_x_l[i]) {
            break;
        }else{
            image.y += 70;
            n += 1;
        }
    }

    for(var i = 0; i < 5; i++){
        mc.timeline.addTween(createjs.Tween.get(arry[i]).to({y:0},0).to({y:-100},100));
    }
    mc.timeline.addTween(createjs.Tween.get(image).to({y:0},0).to({y:-100},100));
    mc.gotoAndPlay("start");

    btn2.onclick = function() {
        image.x += 10;
        image_x += 10;

        for (var i = n; i < 5; i++) {
            if (image_x < arr_x_r[i]) {
                break;
            }else{
                image.y += 70;
                n += 1;
            }
        }
        if(image_x>350){
            image.x -= 10;
            image_x -= 10;
        }
        if(image_x==350&&image.y==350){
            alert("Congratulate to you!!!")
        }

    }

    btn1.onclick = function(){
        image.x-=10;
        image_x-=10;

        for(var i = n; i < 5; i++){
            if(image_x>arr_x_l[i]){
                break;
            }else{
                image.y += 70;
                n += 1;
            }
        }
        if(image_x<0){
            image.x += 10;
            image_x += 10;
        }
    }

    createjs.Ticker.setFPS(20);
    createjs.Ticker.addEventListener("tick",stage);
}

解决方案

建议你,在你的for循环外alert(n);是不是等于5.看到有个地方n=+1了

时间: 2024-08-03 16:59:04

new- 在js中引入movieClip后 button点击事件里的for循环失效!的相关文章

.net中调用隐藏服务器控件button的click事件

问题描述 .net中调用隐藏服务器控件button的click事件 在ASP.NETt中,需要通过JS调用一个服务器按钮控件的click事件调用后台事件,但是如果按钮的display设置为none之后在遨游浏览器可以通过document.getElementByID(""button1"").click()来调用,在IE或者是360浏览器中则调用了,但是没有效果,却也刷新了页面! 解决方案 用fiddler检查下有没有回发产生,看看是不是被360等流氓软件干扰了.

button点击事件-Android开发listView中的Button点击事件被拦截

问题描述 Android开发listView中的Button点击事件被拦截 根据http://blog.csdn.net/boylinux/article/details/8860443 这位大神的帖子,我的代码如下,现在的问题是Listview中的Button和imageview和textview控件点击之后不会响应,而在滑动一下Listview后,之前的点击事件才会响应,导致这个问题的原因不明,但是如果不用HashMap这个MAP的话,就不会有这个问题,请问大神们这是为什么呢?代码如下: p

artdialog-asp:UpdatePanel包围中的asp:Button点击事件无效

问题描述 asp:UpdatePanel包围中的asp:Button点击事件无效 artdialog弹出框中 用一个asp:UpdatePanel包围的asp:Button点击事件无效,请各位指点,不好意思,新手还没有C币

xml多次追加-c#xml通过button点击事件向xml中多次追加如何实现

问题描述 c#xml通过button点击事件向xml中多次追加如何实现 xml:<?xml version="1.0" encoding="gb2312"?> dddddddd fffeeee 我想实现每点击一次button,就把输入的username和password追加到xml中,不覆盖之前的内容,添加一个节点. private void button1_Click(object sender, EventArgs e) { XmlDocument

控件-求助:button点击事件无法触发

问题描述 求助:button点击事件无法触发 前台是这样的 已选择: </ul> <asp:Button ID="btn_update_app" runat="server" Text="确定" onclick="btn_confirm_Click" /> <input id="Button3" type="button" value="取消&qu

jQuery中animate动画第二次点击事件没反应

  这篇文章主要介绍了jQuery中animate动画第二次点击事件没反应的解决方法,非常的实用,有需要的小伙伴可以参考下 用animate做点击翻页动画时发现第二次点击事件动画没反应,而第一次点击有动画效果,代码如下: 代码如下: $(".page").stop().animate({top:"-300px"}, 800, 'easeInOutExpo'); 第二次点击事件动画没反应的原因:top是page元素顶部相与其父元素顶部的距离,第一次点击后,page元素

wpf-WPF DataGrid Button 点击事件

问题描述 WPF DataGrid Button 点击事件 WPF DataGrid中放置一个Button 这个按钮的点击事件怎么做,有参数的话后台怎么接收? 求解答!!!!!!!!! 解决方案 事件传递的参数是定义好的,如果你需要传更多的参数,可以借助全局变量 解决方案二: CommandParameter="{Binding id}" 这样算是给Button绑定了么?我点击Button的事件不能是直接给Button一个Click吧?后台又怎么获取这个id呢 我刚刚接触WPF 我记得

aspx-Ext.net的ext.button点击事件的触发顺序

问题描述 Ext.net的ext.button点击事件的触发顺序 我在aspx中用ext.button, <ext:Button ID="export" runat="server" > <DirectEvents> <Click OnEvent="A" Success="B" Before="C"> </Click> </DirectEvents>

Android开发-之监听button点击事件的多种方法_Android

 在Android下,事件的发生是在监听器下进行,android系统可以响应按键事件和触摸屏事件,本文主要介绍了button点击事件的方法 一.实现button点击事件的方法 实现button点击事件的监听方法有很多种,这里总结了常用的四种方法: 1.匿名内部类 2.外部类(独立类) 3.实现OnClickListener接口 4.添加XML属性 每一种方法都有它的优点也有它的不足,那么接下来就来详细的讲解这四个实现方法  二.具体实现 1.匿名内部类: 在Android开发中我们会经常看到各种