2009-12-04 107 views
1

我根本不用玩网络游戏,但最近有人给了我一个网站模板,我想开始玩它。如果我的条款被误导,我很抱歉。Flash制作AJAX请求?

该网站的主要部分是一个小小的Flash事物,它具有按钮作为链接到网站的不同区域。所有这一切都很好,但是每当我点击这些链接时,只有底部部分发生变化时,它必须重新加载整个页面(包括Flash应用程序)。这不是真的巨大的问题,因为一切都很小,但它有点烦人。

我依稀记得“固定”在我的网络编程类这种行为使用AJAX,但那只是直接的HTML和Javascript,没有Flash播放器渣土周围。

我的问题是,当有人点击Flash对象中的链接时,我该如何克服重新加载整个页面的问题?有什么好的方法可以调用getURL()以外的其他方法来实现这种效果吗?我宁愿不用尝试在没有Flash的情况下重新创建该网站的体验(但是如果我有一些图形功能,我会!)。

感谢您的任何建议!

回答

2

Flash有一个称为ExternalInterface的好东西。它允许你直接从你的flash电影中调用父HTML页面上的JS方法。

格式是值得的效果:

ExternalInterface.call("myJSFunctionName", params:Object); 

或者其他类似的效果,仔细检查,以得到确切的格式。这应该让你直接用JS处理你的导航,而不必每次刷新你的页面。

+1

太棒了!我会检查一下,看起来很完美!谢谢! – mrduclaw 2009-12-04 04:53:36

1

嗯......你能改变Flash对象吗?会建议将链接上的URL更改为可以加载URL的普通JavaScript ...

+0

这听起来对我来说太棒了。你能否给我多一点继续?我会如何去做这件事? – mrduclaw 2009-12-04 03:46:17

+0

这意味着你需要用flash文件(.fla文件)来创建flash对象......如果你有这个,那么你可以在flash文件上找到链接并将它们从url改为javascript调用URL ...希望我的意思是... – AceMark 2009-12-04 08:34:20

+0

@trace我发现了对'getURL()'的调用,但我不能很好地用getURL替换'getURL(“index2.html”);'' (“someJavaScriptMethod”);'我可以吗? – mrduclaw 2009-12-06 21:44:43