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 相关文章推荐
FireFox与IE 下js兼容触发click事件的代码
Nov 20 Javascript
也说JavaScript中String类的replace函数
Sep 22 Javascript
将查询条件的input、select清空
Jan 14 Javascript
javascript中return,return true,return false三者的用法及区别
Nov 17 Javascript
详解js中常规日期格式处理、月历渲染和倒计时函数
Dec 28 Javascript
jquery插件开发之选项卡制作详解
Aug 30 jQuery
详解Vue双向数据绑定原理解析
Sep 11 Javascript
微信小程序页面间跳转传参方式总结
Jun 13 Javascript
Vue事件修饰符native、self示例详解
Jul 09 Javascript
基于layui实现高级搜索(筛选)功能
Jul 26 Javascript
微信小程序修改数组长度的问题的解决
Dec 17 Javascript
VUE使用draggable实现组件拖拽
Apr 06 Vue.js
利用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
window.onload 加载完毕的问题及解决方案(上)
2009/07/09 Javascript
基于jQuery的为attr添加id title等效果的实现代码
2011/04/20 Javascript
图片上传插件jquery.uploadify详解
2013/11/15 Javascript
jQuery中data()方法用法实例
2014/12/27 Javascript
浅谈javascript中call()、apply()、bind()的用法
2015/04/20 Javascript
Bootstrap基本组件学习笔记之导航(10)
2016/12/07 Javascript
Swiper自定义分页器使用详解
2017/12/28 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
2018/05/08 Javascript
JavaScript 斐波那契数列 倒序输出 输出100以内的质数代码实例
2019/09/11 Javascript
Nodejs使用archiver-zip-encrypted库加密压缩文件时报错(解决方案)
2019/11/18 NodeJs
Openlayers实现距离面积测量
2020/09/28 Javascript
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
Python线程指南详细介绍
2017/01/05 Python
pytorch训练imagenet分类的方法
2018/07/27 Python
Python多进程写入同一文件的方法
2019/01/14 Python
关于python之字典的嵌套,递归调用方法
2019/01/21 Python
Python基于scipy实现信号滤波功能
2019/05/08 Python
Python完成毫秒级抢淘宝大单功能
2019/06/06 Python
python高阶函数map()和reduce()实例解析
2020/03/16 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
HTML5网页音乐播放器的示例代码
2017/11/09 HTML / CSS
HTML5 transform三维立方体实现360无死角三维旋转效果
2014/08/22 HTML / CSS
美国流行背包品牌:JanSport(杰斯伯)
2018/03/02 全球购物
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
REN Clean Skincare官网:英国本土有机护肤品牌
2019/02/23 全球购物
英国DVD和蓝光碟片购买网站:Zoom.co.uk(电影和电视)
2019/09/23 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
网上常见的一份Linux面试题(多项选择部分)
2015/02/07 面试题
校本课程教学计划
2015/01/19 职场文书
医生个人年终总结
2015/02/28 职场文书
2015年食堂工作总结报告
2015/04/23 职场文书
2015年会计年终工作总结
2015/05/26 职场文书
Eclipse+Java+Swing+Mysql实现电影购票系统(详细代码)
2022/01/18 Java/Android
2021好看的国漫排行榜前十名 《完美世界》上榜,《元龙》排名第一
2022/03/18 国漫