在AS脚本语言中我们经常看到点(.)官方对点语法(运算符)的说明是这样的:
运算符;用于定位影片剪辑的层次结构,以便访问嵌套的(子级)影片剪辑、变量或属性。点运算符也用于测试或设置对象的属性、执行对象的方法或创建数据结构。
上面的语言比较精练,不容易理解。
在ActionScrip脚本语言中,点(.)点用来明确某个电影剪辑(MC)或者对象(Object)的相关的属性和方法。简单点的说有些像斜杠语法(斜杠语法主要用于老版本的Flash中,如:Flash3 Flash4 当然Flash5++也是支持这种斜杠语法,斜杠语法的作用就是用于指出变量,电影剪辑,的目标路径)
点语法是用于指向变量或电影剪辑的目标路径,其表达试由电影剪辑或者对象的名字为起点,紧挨着便是一个小点,而后是要指定的方法,属性或者变量,举个简单的例子:
_alpha是获取电影剪辑的透明度 表达式 lewiMC._alpha就是获取电影剪辑lewiMC的透明属性,在如_x是获得电影剪辑的x的横坐标,表达式lewiMC._x就是获取lewiMC这个电影剪辑的横坐标,上面2个例子比较简单很容易理解。
我们来看下这个稍微复杂点的表达式
lewi.from.China=true
这个表达式要用不用AS语法去理解,英文翻译到是很简单,但他在AS.语法中的含义是不同的。对上面表达式的理解是:
China电影剪辑是from中一个变量,而这个from又被嵌套在电影剪辑lewi中的电影剪辑。
要表达一个电影剪辑和对象的方法是相同的,如要移动lewiMC电影剪辑的播放头可以写成lewiMC.play();
在点语法中还有2个特殊的“小名”分别是_parent和_root通过字面意思不难看出一个是父时间轴,一个是主时间走,我们先介绍第一个_parent
我们约定lewiMC被嵌套在电影剪辑lewi’sFatherMC之中如果要在lewiMC电影剪辑上告诉lewi’sFatherMC的电影剪辑停止播放,我们应该这样表达 _parent.stop();
注:此脚本写在lewiMC这个电影剪辑上。
上面基本上就是点语法的详细用法,可能大家会想点语法和斜杠语法意义部差不多吗?
为什么不用斜杠语法呢?很多脚本范例中用到tellTarget动作我就能看到斜杠语法啊!
前面我们说过斜杠语法主要应用于老版本的FlashPlayer中,虽然高版FlashPlayer同样支持斜杠语法,但我们不推荐使用!在斜杠语法中,斜杠被用代替点。如:
worldMC.asiaMC.ChinaMC.lewiMC.my variable (点语法)和
worldMC/asiaMC/ChinaMC/lewiMC/my variable (斜杠语法)
说表达的效果是一样的。
关于点语法是AS脚本编写说必须理清楚的基础知识!希望大家都能掌握。