今早在开发中碰到一个怪异问题,浪费了一些时间debug,最后发现是Flash CS3 bug。
Bug表现:stageHeight数值不正常,始终比正常值少100px。
随便新建一个fla文档,在第一帧输入“trace(this.stage.stageHeight);”。发现stageHeight结果始终是比正常舞台高度少100像素,比如文档高度是400,那么trace出来的结果就是300。使用文档类也一样。
放到同事电脑上编译,则stageHeight结果正确。不解,相对无言。最后发现,如果把Ctrl+Enter弹出的调试窗口中的“带宽设置”视图取消,则trace正常。无语之极。平时开发时,大部分人都不会开这个“带宽设置”窗口,所以不易发现此bug。而我以前开发AS1,AS2留下的习惯,喜欢打开“带宽设置”窗口,结果就碰上这个飘忽的问题,白白郁闷了一些时间。放在这里,希望碰到同样问题的人,能够搜索到这篇文。






Comments (9)
带宽设置下面才是舞台...带宽设置正好是100px所以每次看会少100px,应该不算是bug.如果把带宽设置往上拉一拉,再Ctrl+Enter发现stageHeight变高了:)
不过确实有误导人的作用
Posted by xucan | January 31, 2008 2:55 PM
Posted on January 31, 2008 14:55
真的耶!不过楼上的说的也很对!
Posted by Dream | February 14, 2008 11:39 AM
Posted on February 14, 2008 11:39
真的耶!不过楼上的说的也很对!
Posted by Dream | February 14, 2008 11:39 AM
Posted on February 14, 2008 11:39
学习了~~~!!!
Posted by qqq | February 27, 2008 11:49 AM
Posted on February 27, 2008 11:49
确实不能算bug,stageHeight很精确的
Posted by wizim | March 6, 2008 3:24 AM
Posted on March 6, 2008 03:24
谢谢分享!
Posted by replica handbags | May 4, 2008 5:17 PM
Posted on May 4, 2008 17:17
这个我也碰到过,请把trace(this.stage.stageHeight);放到第2帧上就会正常了感觉是数据读取时间的问题.还有一个问题和这个类似,在制作大文件的时候在场景第一帧立刻跳转到后面的帧也会失败,他会跳转到中间的某个帧.也就是说在场景第一针的时候后面的帧还没有读出来.所以会跳转失败
Posted by lzy100p | May 21, 2008 2:37 AM
Posted on May 21, 2008 02:37
这个我也碰到过,请把trace(this.stage.stageHeight);放到第2帧上就会正常了感觉是数据读取时间的问题.还有一个问题和这个类似,在制作大文件的时候在场景第一帧立刻跳转到后面的帧也会失败,他会跳转到中间的某个帧.也就是说在场景第一针的时候后面的帧还没有读出来.所以会跳转失败
Posted by lzy100p | May 21, 2008 2:37 AM
Posted on May 21, 2008 02:37
这个我也碰到过,请把trace(this.stage.stageHeight);放到第2帧上就会正常了感觉是数据读取时间的问题.还有一个问题和这个类似,在制作大文件的时候在场景第一帧立刻跳转到后面的帧也会失败,他会跳转到中间的某个帧.也就是说在场景第一针的时候后面的帧还没有读出来.所以会跳转失败
Posted by lzy100p | May 21, 2008 2:39 AM
Posted on May 21, 2008 02:39