2011-12-13 55 views
0

我有问题,我找不到任何answear。AS2检查字符串是否更改或功能被触发

实施例:

在_root存在功能 “路径= LOAD_PATH()” 当按下一个按钮,它被触发。此功能的结果可以是“photos/folder1/image.jpg”或“folder1/textpage/”或任何其他路径。 我试图找到的是,如何获取“路径”的值,当它被更改或获取回调时,只要函数“load_Path()”被触发。

我无法访问此函数,因为它位于_root SWF中,我无法编辑。

感谢您的回复。

问候,Artur。

回答

1

这听起来像'手表'方法是你所需要的。

它的方法签名是:

公共腕表(名称:字符串,回调:函数,[用户数据:对象):布尔

它可以让你定义属性观看和一个回调函数,当属性改变时被触发。

对您有帮助吗?

+0

感谢您的回答。我会检查它... btw - 我可以使用watch()来检查数组对象的变化吗?我的意思是'image.name [currentImg-1] image.watch(“name”,myCallbackFunction);'我试过这个,但是我无法得到任何结果。 –

0

由于您无法编辑根SWF,因此触发该功能时将无法获得回调。我会建议不断检查价值(每帧或每秒),如下所示:

function checkPath() { 
    trace(_root.path); 
} 
onEnterFrame = checkPath; //check every frame 
//OR 
setTimeout(checkPath, 1000); //check every second 
+0

感谢您的回答。当然我知道在这种情况下我可以使用时间间隔或'onEnterFrame',但它不是有效的编码方式... –

+0

然而,如果在编译时没有将回调函数添加到根swf,没有别的办法。 – package