如何用COOKIES控制 广告只显示一次
作者:佚名 来源:本站整理 发布时间:2009-06-05 18:22:00
首先,要把以下代码存为cookies.js 在htm页中调用!
此为JS代码A:
- function setCookie(name,value,days){
- var exp=new Date();
- exp.setTime(exp.getTime() + days*24*60*60*1000);
- var arr=document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
- document.cookie=name+"="+escape(value)+";expires="+exp.toGMTString();
- }
- function getCookie(name){
- var arr=document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
- if(arr!=null){
- return unescape(arr[2]);
- return null;
- }
- }
- function delCookie(name){
- var exp=new Date();
- exp.setTime(exp.getTime()-1);
- var cval=getCookie(name);
- if(cval!=null){
- document.cookie=name+"="+cval+";expires="+exp.toGMTString();
- }
- }
以上代码就是读写cookies的函数,这个你不需要看懂,只要知道怎么用就行了
MJJ们再看如下JS代码,把这个代码存为pacth.js 在同一个网页内调用,注意先调用JS代码A,再调用JS代码B
<script src="cookies.js"></script><script src="patch.js"></script>
注意路径问题,这个就不多说了
此为JS代码B
- function out(){
- if(getCookie("out")!="yes"){
- setCookie("out","yes",1);document.write('此处放置你的js代码-标注1');
- }
- }
- out();
此上代码,是调用cookies中的函数,来判断名为out的cookies是否已经存在,如果不存在,则,设置此cookies为YES
然后再运行你的JS代码
至此,如果你再刷新页面的话,次名为OUT的COOKIES已经存在了,就不会再运行标注1的代码了
补充:
如果我要设置一个弹窗,还有多个需要设置时间的代码怎么办?
那就把function out() 这个out函数重新命名,就又可以多设置一个可控制时间的函数了
恐怕我表示不清楚,
我给大家举个例子
- function out1(){
- if(getCookie("out1")!="yes"){
- setCookie("out1","yes",1);document.write('此处放置你的js代码1-标注1');
- }
- }
- out1();
[code]function out2(){
if(getCookie("out2")!="yes"){
setCookie("out2","yes",1);document.write('此处放置你的js代码2-标注1');
}
}[
out2();
/code]依次类推
不知道大家能不能看懂,很简单的。
编辑点评:广告是站长赚钱的一条途径,在访客的角度合理的放置广告是每个站长必须做的事情。




