JS使用cookie实现只出现一次的广告代码效果


Posted in Javascript onApril 22, 2017

我们上网经常会遇到第一次需要登录而之后不用再登录的网站的情况,其实是运用了Cookie 存储 web 页面的用户信息,Cookie 以名/值对形式存储,当浏览器从服务器上请求 web 页面时, 属于该页面的 cookie 会被添加到该请求中。服务端通过这种方式来获取用户的信息l。

今天的这个效果:第一次打开网页弹出一个广告框(js实现卷帘效果),关闭广告或刷新页面之后就不会再出现。由于往电脑里写cookie信息是服务器行为,只有访问网站,服务器才会向电脑里写cookie信息,由于现在只是普通网页,所以无法往电脑里写cookie信息的。在众多浏览器中火狐浏览器是支持这种本地操作,因此我们用火狐测试。

先写广告代码:

<style>
*{padding: 0;margin: 0;}
  #adv{
    width: 300px;
    height: 300px;
    position: relative;
    overflow: hidden;
  }
  #adv span{
    position: absolute;
    top:15px;
    right:15px;
    text-decoration: underline;
    color: #fff;
    cursor: pointer;
  };
</style>
<div id="adv">
    <span id="close">关闭</span>
    <img src="1.png" alt="" />
 </div>

js代码:

<script>
    var adv=document.getElementById('adv');
    var close=document.getElementById('close');
    /*广告弹出时的卷帘效果方法*/
    function ani(obj){
      var allWidth=document.documentElement.clientWidth; //获取网页可视区域宽
      var allHeight=document.documentElement.clientHeight;//获取网页可视区域高
      adv.style.left= (allWidth-adv.offsetWidth)/2+'px'; //使广告居中在页面
      adv.style.top= (allHeight-adv.offsetHeight)/2+'px';
      var num=0;
      var objH=adv.offsetHeight;
      var timer;
      timer=setInterval(function(){  //定时器,没50毫秒增加10px的高度
        if(num<parseInt(objH)){
          num+=10;
          obj.style.height=num+'px';
        }
        else{
          clearInterval(timer);
        }
      },50);
    }
    /*点击关闭广告*/
    close.onclick=function(){
      adv.style.display="none";
    }
    /*设置cookie,cookie是以字符串形式存储的,可以有很多参数,但必要的一个是cookie 的名称name*/
    function setcookie(){
      var d=new Date(); 
      d.setTime(d.getTime()+24*60*60*1000);  //设置过去时间为当前时间增加一天
      document.cookie="name=world;expires="+d.toGMTString(); //expires是cookie的一个可选参数,设置cookie的过期时间
      var res=document.cookie;
      return res;  //返回cookie字符串
    }
    /*判断网页是否是第一次浏览,如果第一次则弹出广告,然后设置cookie值,否则把广告隐藏*/
    if(document.cookie==""){
      ani(adv);
      setcookie();
    }else{
      adv.style.display='none';
    }
</script>

广告效果图如下(第一次浏览网页,刷新后就没有了):

JS使用cookie实现只出现一次的广告代码效果

现在测试cookie,在火狐里关闭cookie,把你设置的cookie(没有域名)name移除选中,如图:

JS使用cookie实现只出现一次的广告代码效果

从上图可以看到,cookie的过期时间设置为了明天,明天就会失效,如果不删除cookie,等cookie失效后还是会弹出广告。

以上所述是小编给大家介绍的JS使用cookie实现只出现一次的广告代码效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本
Sep 22 Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
Jan 22 Javascript
JS不间断向上滚动效果代码
Dec 25 Javascript
自己实现ajax封装示例分享
Apr 01 Javascript
js取整数、取余数的方法
May 11 Javascript
兼容Firefox的Javascript XSLT 处理XML文件
Dec 31 Javascript
js+jquery常用知识点汇总
Mar 03 Javascript
jquery判断复选框是否被选中的方法
Oct 16 Javascript
jQuery无缝轮播图代码
Dec 22 Javascript
你真的了解BOM中的history对象吗
Feb 13 Javascript
微信小程序中form 表单提交和取值实例详解
Apr 20 Javascript
vue的for循环使用方法
Feb 12 Javascript
利用JS实现简单的瀑布流加载图片效果
Apr 22 #Javascript
jQuery实现百度登录框的动态切换效果
Apr 21 #jQuery
HTML5+Canvas调用手机拍照功能实现图片上传(下)
Apr 21 #Javascript
微信JS-SDK选取手机照片上传功能
Apr 21 #Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(上)
Apr 21 #Javascript
HTML5实现微信拍摄上传照片功能
Apr 21 #Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
Apr 21 #jQuery
You might like
VML绘图板②脚本--VMLgraph.js、XMLtool.js
2006/10/09 PHP
40个迹象表明你还是PHP菜鸟
2008/09/29 PHP
PHPUnit PHP测试框架安装方法
2011/03/23 PHP
typecho插件编写教程(二):写一个新插件
2015/05/28 PHP
Apply an AutoFormat to an Excel Spreadsheet
2007/06/12 Javascript
Autocomplete Textbox Example javascript实现自动完成成功
2007/08/17 Javascript
javascript五图轮播切换实用版
2012/08/17 Javascript
浅析Javascript使用include/require
2013/11/13 Javascript
轻松5句话解决JavaScript的作用域
2016/07/15 Javascript
微信小程序 wxapp视图容器 view详解
2016/10/31 Javascript
weUI应用之JS常用信息提示弹层的封装
2016/11/21 Javascript
nodejs 实现钉钉ISV接入的加密解密方法
2017/01/16 NodeJs
windows 下安装nodejs 环境变量设置
2017/02/02 NodeJs
vue中用H5实现文件上传的方法实例代码
2017/05/27 Javascript
利用types增强vscode中js代码提示功能详解
2017/07/07 Javascript
vue中的scope使用详解
2017/10/29 Javascript
一个简单的node.js界面实现方法
2018/06/01 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
js计算两个时间差 天 时 分 秒 毫秒的代码
2019/05/21 Javascript
微信小程序 wx.getUserInfo引导用户授权问题实例分析
2020/03/09 Javascript
[02:56]DOTA2矮人直升机 英雄基础教程
2013/11/26 DOTA
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
利用Python为iOS10生成图标和截屏
2016/09/24 Python
python内存动态分配过程详解
2019/07/15 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
3分钟英语演讲稿
2014/04/29 职场文书
大型公益活动策划方案
2014/08/20 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
2015年小学图书室工作总结
2015/05/18 职场文书
2015年小学语文工作总结
2015/05/25 职场文书
晚会开场白和结束语
2015/05/29 职场文书
党风廉政教育心得体会2016
2016/01/22 职场文书
pytorch 运行一段时间后出现GPU OOM的问题
2021/06/02 Python
Python中time标准库的使用教程
2022/04/13 Python
浅谈MySql update会锁定哪些范围的数据
2022/06/25 MySQL