如何跟踪点击次数?

时间:2014-01-22 21:18:59

标签: javascript html

我有一个<table ...元素,其中包含一列和多行。这些行中的每一行都是指向外部共享驱动器的链接。

<tr><td ><a href="file://xxx">Staff1</a></td></tr>
  <tr ><td ><a href="file://ccc">Staff2 </a></td></tr>

我需要跟踪链接的点击次数。如果有人点击链接,我怎样才能创建一些变量或任何变量++

         NumberOfClicks
Staff1        30
Staff2        50

我需要这些计数,以免在会话结束时被删除。我需要他们总是积累

我该怎么做?


我的设置如下: 我是SharePoint网站的所有者。我不允许安装SP Server(否则我可以轻松使用c#)。所以,我必须使用JavaScript。

我尝试使用on click功能。但问题是,我可以收集变量中的点击次数,这些变量在关闭浏览器后会无效。有什么工作吗?

3 个答案:

答案 0 :(得分:5)

一些基本的javascript可以解决问题。为你的html链接提供一个共同的类,如:

<tr><td><a class="my-link" href="file://xxx">Staff1</a></td></tr>
<tr><td><a class="my-link" href="file://ccc">Staff2 </a></td></tr>

然后在您的JavaScript中,您可以跟踪点击次数。我建议使用jQuery cookie plugin在会话中存储此号码。

$(function() {
    var clicks = 0;
    $(".my-link").click(function() {
        clicks++;
        $.cookie('stored_clicks', clicks);
    });
});

然后,要在需要时访问存储的点击次数,您只需编写:

$.cookie('stored_clicks');

修改

如果您需要访问每个用户及其点击次数,为什么不将这些值存储在某种隐藏的HTML中?

以下主要是伪代码,因为我不知道您对用户详细信息的访问类型。这也会创建相当多的冗余html,但你也可以准确地说出点击的链接。

<div id="hidden-stats" style="display: none"></div>

    $(".my-link").click(function() {
        clicks++;
        $.cookie('stored_clicks', clicks);
        $('#hidden-stats').append("<p>" + User.Details + $.cookie('stored_clicks') + "</p>");
    });

答案 1 :(得分:4)

如果您只想在一个浏览器中计算点击次数,只需使用浏览器的本地存储空间或Cookie。

否则,更好的方法是使用服务器端代码(如PHP)来计算浏览量。

答案 2 :(得分:1)

您可以编写onclick功能,在页面上显示不可见的图像(例如透明的gif),并观察在网页统计中下载的次数。