我想在用户上用 Jquery 运行一个 javascript 函数,但只有当他浏览网站上的 3 个页面时。有谁知道是否可以这样做?如何?
问问题
91 次
4 回答
2
您可以使用会话状态或 url 参数跟踪访问过的页面
于 2013-09-18T20:08:35.723 回答
2
你可以使用cookies。快速的谷歌搜索应该会产生大量的 jQuery Cookie 插件。
于 2013-09-18T20:09:26.380 回答
1
您可以将计数存储在localStorage
.
(function($){
$(document).ready(function () {
var count = localStorage.getItem('pageCount');
if (!count) {
count = 1;
} else {
count++;
}
localStorage.setItem('pageCount', count);
if(count === 3) {
theFunctionYouWantToCall();
}
});
function theFunctionYouWantToCall() {
// do some javascript/jQuery stuff
}
}(jQuery));
如果你想使用 localStorage并有一个 cookie 回退,你可以使用我的缓存库。
于 2013-09-18T20:18:55.190 回答
0
假设三个独特的页面访问:
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.3.1/jquery.cookie.min.js"></script>
<script type="text/javascript">
$(function(){
var c = JSON.parse($.cookie('visitsToPage') || '[]');
if (c.indexOf(window.location.href) == -1) c.push(window.location.href);
if (c.length == 3){
// this is third visit--do something
}
$.cookie('visitsToPage', JSON.stringify(c));
});
</script>
当然,这可以重构为使用 localStorage,但我会留给你。
于 2013-09-18T20:13:29.603 回答