【问题标题】:Flash syntax errorFlash 语法错误
【发布时间】:2012-02-29 15:38:16
【问题描述】:

我是 Flash 新手,我想做的是用鼠标滚动背景...但这给了我一个语法错误...错误来自哪里?

var movieWidth:Number = stage.stageWidth;

menuWidth = nav1.width;

nav2.x = nav1.x + menuWidth;

addEventListener("enterFrame",frame_handler);

function frame_handler(e:Event) {
var a:Number = mouseX;
var b:Number = movieWidth/2;
var c:Number = 20;
var pos:Number= 0-((a-b)/20);

nav1.x += pos;
nav2.x += pos;

if (nav1.x >= 0 && nav1.x <= menuWidth)
{ nav2.x = nav1.x – menuWidth }
else if (nav1.x <= movieWidthmenuWidth)
{ nav2.x = nav1.x + menuWidth }

if (nav2.x <=movieWidth-menuWidth) 
{ nav1.x = nav2.x + menuWidth } 
else if (nav2.x>=0) 
{ nav1.x = nav2.x- menuWidth }

}

【问题讨论】:

  • 您是在编译时收到错误,还是在运行时收到错误?错误信息说什么?你能突出显示具体的行吗?一旦我们看到错误,我们可以尝试解释它。

标签: flash actionscript


【解决方案1】:

注意这句话

{ nav2.x = nav1.x – menuWidth }

我认为你的减号在这个陈述中是错误的

wrong one (ASCII 8211)  –

correct one (ASCII 45) -

请更换。还要检查其他语句。

看到这个:http://www.cs.sfu.ca/~ggbaker/reference/characters/

【讨论】:

    【解决方案2】:

    menuWidth 是否被声明过? nav1nav2 相同 - 它是什么?

    此外,如果您在语句后放置一个分号,您会比较安全。根据编译器规则,这不是强制性的,但它可能会让您陷入困惑,您会误解代码。

    顺便说一句:当第一个操作数为 0 时,一元 - 运算符与二元 - 运算符的作用相同。这就是表达式:

    0 - x
    

    相当于:

    -x
    

    【讨论】:

      猜你喜欢
      • 2012-04-21
      • 1970-01-01
      • 2021-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多