0

我有一个 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 
    }  
}
4

1 回答 1

1

首先,您的 AJAX 调用中有一些错误。它需要看起来像:

$.ajax({  
    url: reg.php,  
    cache: false,  
    type: "GET",  
    data: ID 
});

(并且)需要添加。

http://api.jquery.com/jQuery.ajax/

其次,我要做的是将用户发送到您自己的网站并向 url 添加一个参数,以便您可以记录 url,然后在 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".

于 2013-08-30T10:06:14.523 回答