我使用的是一个jQuery Colorbox onLoad灯箱,没问题。
这是到目前为止的代码,我想知道如何使灯箱每5页加载一次(例如)。因此,当用户浏览网站时,他们访问灯箱的每5个页面就会出现。
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="res/jquery.colorbox-min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
setTimeout(function() {
$.fn.colorbox({href:"xxxxx.jpg", open:true});
}, 1500);
});
</script>
谢谢,任何帮助都表示赞赏,即使你能指出我正确的方向。
答案 0 :(得分:0)
通常,您必须跟踪页面加载计数。就像安东尼建议的那样,你应该把它放在饼干里。
我在网上发现了两个处理Cookie的功能:cname
= Cookie名称,cvalue
是您在Cookie中保存的内容,而milliseconds
是Cookie有效的时间; < / p>
function setCookie(cname, cvalue, milliseconds) {
var d = new Date();
d.setTime(d.getTime() + (milliseconds));
var expires = "expires=" + d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
}
return "";
}
所以你想要做的是每个页面加载检索带有计数的cookie并增加它:
var _pageloads = getCookie("PageLoadCount");
if(_pageloads=="")
{
_pageloads=0;
}
_pageloads +=1;
if(_pageloads ==5){
_pageloads =0; //reset your counter
//pop up the lightbox
}
setCookie("PageLoadCount",_pageloads,1 * 60 * 1000); //make cookie valid for one hour