Flash语法错误

时间:2012-02-29 15:38:16

标签: flash actionscript

我是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 }

}

2 个答案:

答案 0 :(得分:1)

请注意此声明

{ nav2.x = nav1.x – menuWidth }

我认为你的减号在本声明中是错误的

wrong one (ASCII 8211)  –

correct one (ASCII 45) -

请更换。检查其他陈述。

请参阅:http://www.cs.sfu.ca/~ggbaker/reference/characters/

答案 1 :(得分:0)

是否曾宣布menuWidthnav1nav2的情况相同 - 这是什么?

此外,如果你在声明后加上分号,那么你会安全起见。根据编译器规则,它不是强制性的,但它可能会使您陷入混乱的情况,在这种情况下您会误解代码。

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

0 - x

相当于:

-x