我是一位c#asp.net开发人员,需要实现一些flash网站横幅。以前对于静态图像横幅,我已经实现了on_click后面的代码或javascript来记录横幅已被点击回数据库并处理重定向。实现Flash网站横幅的最佳方式
我没有太多关于flash的知识,除了我知道flash程序可以处理程序的点击事件。
因此,有人可以建议捕捉和处理网页上Flash对象的点击事件的最佳解决方案。
非常感谢,
亚当
我是一位c#asp.net开发人员,需要实现一些flash网站横幅。以前对于静态图像横幅,我已经实现了on_click后面的代码或javascript来记录横幅已被点击回数据库并处理重定向。实现Flash网站横幅的最佳方式
我没有太多关于flash的知识,除了我知道flash程序可以处理程序的点击事件。
因此,有人可以建议捕捉和处理网页上Flash对象的点击事件的最佳解决方案。
非常感谢,
亚当
你可以跟闪存通过Mootools的Swiff组件使用JavaScript对象: http://mootools.net/blog/2008/02/12/whats-new-in-12-swiff/ http://mootools.net/docs/core/Utilities/Swiff
然而,对于像点击横幅简单的事情,你可以需要swfobject: http://code.google.com/p/swfobject/
一个体面的但简单的XML驱动的Fla sh横幅旋转器可以免费在这里: http://www.weberdesignlabs.com/blog/2008/06/open-source-xml-free-flash-banner/
希望帮助!
谢谢purefusion,我认为swfobject和ExternalInterface.Call()动作方法的组合似乎是前进的方式,这样我可以让Flash程序将点击事件传递给我自己定义了js函数。测试仍在进行中! :) – 2010-02-15 21:53:38
您可以通过多种方式与Flash和服务器端代码进行通信。
1)使用JavaScript从您的SWF文件传达给/和其页面中嵌入。 http://kb2.adobe.com/cps/156/tn_15683.html
这可以用AJAX组合将数据发送到服务器。
var submitListener:Object = new Object();
submitListener.click = function(evt:Object) {
var result_lv:LoadVars = new LoadVars();
result_lv.onLoad = function(success:Boolean) {
if (success) {
result_ta.text = result_lv.welcomeMessage;
} else {
result_ta.text = "Error connecting to server.";
}
};
var send_lv:LoadVars = new LoadVars();
send_lv.name = name_ti.text;
send_lv.sendAndLoad("http://www.flash-mx.com/mm/greeting.cfm", result_lv, "POST");
};
submit_button.addEventListener("click", submitListener);
直接变量发送到服务器端文件(使用GET或POST),你可以有一个服务器端页面(ASP.NET,PHP等.. )来增加数据库命中数。
我会采取这些家伙的代码。但仍然会在闪光灯中为横幅制作包装。这样你就可以通过_root/root来引用它的函数,并且你可以使用这个包装器来与javascript通信。它只是更容易维护... – 2010-02-11 14:28:52