如何在用户点击广告时发送通知?

时间:2014-02-18 14:11:08

标签: javascript html ajax click advertisement

我正在开发一个在移动设备上显示广告的系统。我们的客户可以使用他们的自定义HTML代码进行广告宣传。我们希望在用户点击此广告时收到通知。我可以用我的一些代码包装用户的代码。例如:

<div id="my-code" onclick="myFunction()">

<!-- users code -->
<a href="http://whatever.com/"> click me!</a>
<button onclick="someCode()" />

</div>

如您所见,用户可以在其广告中使用javascript。点击广告后,我想要通知外部服务器,但我不想更改广告的行为。我尝试了几种方法,但未能找到合适的方法:

  1. 我不能使用ajax,因为ajax仅限于域的域 页面(广告显示在外部页面上,无法连接 到我们的服务器)。另一种方法是使用跟踪像素,但是:
  2. 跟踪像素需要一些时间来加载。如果用户点击<a> 标签然后将加载由myFunction()添加的像素跟踪器 在切换到新页面之前。我可以防止传播 事件,但是:
  3. 广告也需要获得此点击。我试图在javascript中停止传播事件,加载像素跟踪器,然后再次触发事件。不起作用 - <a>标签不会以这种方式点击 - 由javascript触发的点击事件仅存在于javascript级别。
  4. 任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

也许你可以像this fiddle

那样
<body>
    <div id="linkContainer">
        <a target="_blank" href="http://www.icrc.org/eng/">Link</a>
    </div>

    <script type="application/javascript">
        $(document).ready(function(){
          function beforeLeave(){
            alert("Outa here!"); //Replace with function to do ajax-call to server
          }

          $('#linkContainer > a').on('click', function() {
            beforeLeave();
          });
        }); 
    </script>
</body>