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 相关文章推荐
来自国外的页面JavaScript文件优化
Dec 08 Javascript
js 浏览器事件介绍
Mar 30 Javascript
jquery ajaxSubmit 异步提交的简单实现
Feb 28 Javascript
浅析JavaScript 箭头函数 generator Date JSON
May 23 Javascript
vue router仿天猫底部导航栏功能
Oct 18 Javascript
vue系列之requireJs中引入vue-router的方法
Jul 18 Javascript
WebSocket的简单介绍及应用
May 23 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
Aug 12 Javascript
layui表格设计以及数据初始化详解
Oct 26 Javascript
Vue使用预渲染代替SSR的方法
Jul 02 Javascript
iview实现动态表单和自定义验证时间段重叠
Jan 10 Javascript
Vue 数据响应式相关总结
Jan 28 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
用PHP和ACCESS写聊天室(六)
2006/10/09 PHP
PHP insert语法详解
2008/06/07 PHP
防止用户利用PHP代码DOS造成用光网络带宽
2011/03/01 PHP
php求两个目录的相对路径示例(php获取相对路径)
2014/03/27 PHP
Laravel事件监听器用法实例分析
2019/03/12 PHP
用JTrackBar实现的模拟苹果风格的滚动条
2007/08/06 Javascript
JS window.opener返回父页面的应用
2009/10/24 Javascript
多浏览器兼容的获取元素和鼠标的位置的js代码
2009/12/15 Javascript
Pro JavaScript Techniques学习笔记
2010/12/28 Javascript
javascript 节点排序 2
2011/01/31 Javascript
Javascript图像处理—为矩阵添加常用方法
2012/12/27 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
.net MVC+Bootstrap下使用localResizeIMG上传图片
2017/04/21 Javascript
利用JavaScript如何查询某个值是否数组内
2017/07/30 Javascript
vue项目部署上线遇到的问题及解决方法
2018/06/10 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
2019/02/15 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
零基础写python爬虫之抓取百度贴吧代码分享
2014/11/06 Python
Python本地与全局命名空间用法实例
2015/06/16 Python
Python管理Windows服务小脚本
2018/03/12 Python
python实现最速下降法
2020/03/24 Python
python爬虫把url链接编码成gbk2312格式过程解析
2020/06/08 Python
最简单的matplotlib安装教程(小白)
2020/07/28 Python
python安装mysql的依赖包mysql-python操作
2021/01/01 Python
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
JDO的含义
2012/11/17 面试题
药剂学专业应届生自荐信
2013/09/29 职场文书
急诊科护士自我鉴定
2013/10/14 职场文书
国贸专业求职信
2014/06/28 职场文书
2014年银行个人工作总结
2014/12/05 职场文书
《确定位置》教学反思
2016/02/18 职场文书
优秀大学生申请书
2019/06/24 职场文书
创业计划书之养殖业
2019/10/11 职场文书
Java并发编程之原子性-Atomic的使用
2022/03/16 Java/Android