我有一个<table ...包含一列和多行的元素.这些行中的每一行都是指向外部共享驱动器的链接.
<tr><td ><a href="file://xxx">Staff1</a></td></tr>
<tr ><td ><a href="file://ccc">Staff2 </a></td></tr>
Run Code Online (Sandbox Code Playgroud)
我需要跟踪链接的点击次数.如何++在任何人点击链接时创建一些变量或任何变量.
NumberOfClicks
Staff1 30
Staff2 50
Run Code Online (Sandbox Code Playgroud)
我需要这些计数,不要在会话结束时删除.我需要他们总是积累
我怎样才能做到这一点?
我的设置如下:我是SharePoint网站的所有者.我不允许安装SP Server(否则我可以轻松使用c#).所以,我必须使用JavaScript.
我试着用on click功能.但问题是,我可以收集变量中的点击次数,这些变量在关闭浏览器后会无效.有什么工作吗?
一些基本的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>
Run Code Online (Sandbox Code Playgroud)
然后在您的JavaScript中,您可以跟踪点击次数.我建议使用jQuery cookie插件在会话中存储这个数字.
$(function() {
var clicks = 0;
$(".my-link").click(function() {
clicks++;
$.cookie('stored_clicks', clicks);
});
});
Run Code Online (Sandbox Code Playgroud)
然后,要在需要时访问存储的点击次数,您只需要编写:
$.cookie('stored_clicks');
Run Code Online (Sandbox Code Playgroud)
如果您需要访问每个用户及其点击次数,为什么不将这些值存储在某种隐藏的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>");
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1652 次 |
| 最近记录: |