我有一个flash swf文件,它实现了clicktag功能(转到某个URL),因为我需要记录有多少用户点击flash,所以有没有办法在用户之前执行javascript函数(记录userid)被重定向到目的地?
这里是clickTag
on (release) {
if (clickTAG.substr(0,5) == "http:") {
getURL(clickTAG, "_blank");
}
}
javascript函数看起来像:
function regUserid(ID){
$.ajax{
url:reg.php,
cache: false,
type: "GET",
data: ID
}
}
答案 0 :(得分:1)
首先,你的AJAX调用中有一些错误。它需要看起来像:
$.ajax({
url: reg.php,
cache: false,
type: "GET",
data: ID
});
(
和)
需要添加。
http://api.jquery.com/jQuery.ajax/
其次,我要做的是将用户发送到您自己的网站并在网址中添加一个参数,以便您可以记录网址,并在JavaScript(甚至更好的PHP)功能中将其发送到正确的网站。
类似于:
on (release) {
if (clickTAG.substr(0,5) == "http:") {
getURL('http://www.yourownurl.com/reg.php?url=' + clickTAG, "_blank");
}
}
在您的reg.php
中,您可以保存clickTag
并使用header('location:' . $_GET['url'])
将其发送到正确的网站。
<强>更新强>
如果您想使用ExternalInterface
,可以执行以下操作:
on (release) {
if (clickTAG.substr(0,5) == "http:") {
ExternalInterface.call('regUserid', clickTAG);
}
}
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html
假设您要将数据发送到regUserid
函数。 clickTag
是函数regUserid
中的参数。
如果您这样做,您仍然需要将用户重定向到正确的网站。所以像document.location.href="http://www.example.com"
。