如何让我的Flash CS4按钮将用户导向另一个URL?

我很抱歉,如果这已被完全解决之前,但我已经通读了其他几个线程,仍然似乎无法让我的文件工作。

我的动作代码位于此消息的底部。 我使用Adobe网站的说明创建它:http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7fd7.html

我相信我已将所有对象设置为正确的符号类型(按钮),并且我的所有实例都被正确命名(请参见此处的截图:www.footprintsfamilyphoto.com/wp-content/themes/Footprints/images/flash_buttonissue.jpg )

行动脚本在这里。 让我知道你是否有建议! (注:我对Flash非常陌生):

stop ();


function babieschildren(event:MouseEvent):void 
{ 
    trace("babies children method was called!!!");
    var targetURL:URLRequest = new URLRequest("http://www.footprintsfamilyphoto.com/portfolio/babies-children"); 
    navigateToURL(targetURL, "_self"); 
}

bc_btn1.addEventListener(MouseEvent.CLICK, babieschildren);
bc_btn2.addEventListener(MouseEvent.CLICK, babieschildren);


function families(event:MouseEvent):void 
{ 
    trace("families method was called!!!");
    var targetURL:URLRequest = new URLRequest("http://www.footprintsfamilyphoto.com/portfolio/families"); 
    navigateToURL(targetURL, "_self"); 
}

f_btn1.addEventListener(MouseEvent.CLICK, families);
f_btn2.addEventListener(MouseEvent.CLICK, families);


function couplesweddings(event:MouseEvent):void 
{ 
    trace("couples weddings method was called!!!");
    var targetURL:URLRequest = new URLRequest("http://www.footprintsfamilyphoto.com/portfolio/couples-weddings"); 
    navigateToURL(targetURL, "_self"); 
}

cw_btn1.addEventListener(MouseEvent.CLICK, couplesweddings);
cw_btn2.addEventListener(MouseEvent.CLICK, couplesweddings);

Flash文件的其他说明 - 文件是一个大约5秒的动画,应停止在最后一帧。 最后一帧包含6个按钮,应该将用户路由到网站的3个不同页面。 请参阅上面的截图图片链接。


好吧,我尝试了更多的事情,我将“家庭”功能改为“家庭功能”,因为它由于某种原因告诉我它是一个重复的功能。 这解决了循环问题(文件循环,而不是停在这些按钮所在的框架上,并且我收到有关family函数的编译错误 - “重复函数定义”和“不兼容重写” - 我相当确信它是不是重复的函数,因为这是我在整个文件中唯一的动作脚本...)。

现在它停在右边的框架上,编译错误似乎被解决了,但是当我点击按钮时,在输出框中看不到跟踪语句。 当我测试电影时,输出框中出现初始错误,它显示为:

TypeError:错误#1009:无法访问空对象引用的属性或方法。 在Portfolio_fla :: MainTimeline / frame133()

任何人都可以让我知道这意味着什么?

我检查并重新检查了所有的按钮名称(和实例名称),它们都在那里,与动作脚本(框架133)位于同一帧,所以不应该导致1009。

也只是逐个删除每个函数和addEventListener,然后测试电影,但在所有3种情况下,1009错误仍然存​​在。 如果删除“stop();”以外的所有代码,则不会收到1009错误 并测试电影。


注意:我在这里打开了一个关于1009错误的新的更具体的问题:stackoverflow.com/questions/2948119/flash-buttons-dont-work-typeerror-error-1009-cannot-access-a-property-or-会见


你的代码看起来很好。 在方法中添加跟踪语句以确保它们确实被调用。 同时检查任何弹出窗口阻止程序; 当您在没有第二个参数的情况下调用navigateToURL时,Flash会尝试创建一个新窗口来打开URL。对于我们的开发人员(幸运的是对于用户而言)不幸的是,大多数弹出窗口阻止程序都会阻止这种情况发生。 将第二个参数添加到您的呼叫中,并查看它是否有效。

navigateToURL(targetURL, "_self"); 

请注意,这会导致新URL被加载到当前窗口/选项卡中,从而有效地替换具有SWF的页面

链接地址: http://www.djcxy.com/p/17809.html

上一篇: How do I get my Flash CS4 buttons to direct the user to another URL?

下一篇: How to add ActionScript 3.0 code to a brand new .fla Flash project?