CSS+js Cookie实现的固定页脚广告条例子

经常看到有些网站为了吸引用户注意,在页面底部放置固定横幅广告,用户滚动页面时,横幅广告一直固定在页底,并不随页面滚动而滚动,当然一般允许用户可以关闭广告条,并设置一定时间内不再显示此广告条。本文将介绍使用CSS+Cookie来实现这一效果。

HTML

首先,我们将横幅广告的html代码放到页面最底部,因为是最后加载的。也可以使用外部js动态插入到页面底部。整个HTML结构由遮罩层.float_layer,内容层.float_content组成,其中.float_bg为广告部分,内容可以是图片、文字等任意形式的html元素,.float_close是关闭按钮,用户不喜欢广告可以关闭展示。
 
<div class="float_mask" id="float_mask">
    <div class="float_layer">
    </div>
    <div class="float_content clearfix">
        <div class="float_bg">
            <a target="_blank" href="http://www.helloweba.com/" title='广告部分'>
                <div class="float_slogan"><!--广告内容--></div>
            </a>
        </div>
        <div class="float_close">
            <a onclick="closeFootAd()" href="#" title="我知道了"></a>
        </div>
    </div>
</div>

CSS

我们使用CSS将广告条固定在页脚,以及展示半透明遮罩效果、广告关闭按钮等效果。我们知道position: fixed是固定元素位置,配合bottom、right等属性可以将元素固定在页面某个位置,并不随页面滚动而滚动。使用opacity属性可以实现透明效果。我们给.float_slogan一个background属性,将广告图片作为背景加入,当然你也可以不需要这样做,直接在上面的html中加入图片或文字。
 
.float_mask{position: fixed;z-index: 19999;display:none;width: 100%;right: 0; bottom: 0;height: 105px;_bottom: auto;_width: 100%;_position: absolute;
_top: expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight-this.offsetHeight-(parseInt(this.currentStyle.marginTop,10)||0)-(parseInt(this.currentStyle.marginBottom,10)||0)));}
.float_layer{position: absolute;left: 0;top: 0;z-index: 1;width: 100%;height: 100%;background: #071828;filter: alpha(opacity=80);opacity: 0.80;}
.float_content{ position: relative;z-index: 2;width: 1005px;height: 100%;margin: 0 auto;padding-left: 70px;}
.float_bg, .float_close{ float: left;}
.float_bg{position: relative;width: 820px;height: 135px;margin-top: -27px;}
.float_slogan {position: absolute; background: url("footer_ad.png") 0 0 no-repeat;}
.float_slogan{left: 0;bottom: 0;width: 800px;height: 135px;cursor: pointer;}
.float_close{width: 60px;margin-top: 30px;}
.float_close a {display: block;width: 53px; height: 52px; margin-left: 7px; background: url("close.png") 0 0 no-repeat;-webkit-transition: all 400ms;}

JAVASCRIPT

我们初次打开页面时,Javascript先去检测页底横幅广告关联的cookie信息,如果cookie表示的信息是关闭的,则不显示页底广告,反之显示页底广告。我们在点击关闭按钮的时候会调用closeFootAd()函数,点击关闭按钮,则将广告条隐藏,即关闭,并设置cookie相关值。以下是整个javascript的操作代码:
 
window.onload = function(){
    if(getCookie("footad")==0){
        document.getElementById("float_mask").style.display="none";
    }else{
        document.getElementById("float_mask").style.display="block";
    }
}
//关闭底部广告
function closeFootAd() {
    document.getElementById("float_mask").style.display="none";
    setCookie("footad","0"); 
}
   
//设置cookie 
function setCookie(name,value){ 
    var exp = new Date();  
    exp.setTime(exp.getTime() + 1*60*60*1000);//有效期1小时 
    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); 

//取cookies函数 
function getCookie(name){ 
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); 
    if(arr != null) return unescape(arr[2]); return null; 

时间: 2025-01-03 07:49:58

CSS+js Cookie实现的固定页脚广告条例子的相关文章

将页脚固定在页面底部的CSS实战

  页脚的位置问题 网页的页脚(footer),也就是通常用来放置帮助链接及版权信息的地方.页脚自然是应该位于页面底部的,但依照一般的做法,如果位于页脚之前的网页内容比较少,或者说使用了一个垂直分辨率较大的显示器,就有可能出现页脚看起来不在页面底部的情况,如下图. 由于页脚基本上是一个网站的所有页面公用的部分,不同页面的内容量有所差异,因此确实有可能某些页面内容不够而出现这样的问题.另外,尤其是包含了底色的页脚,发生这种问题会很影响美观. 所以,我们希望页脚能够无论网页内容量多少,都准确地位于底

Bootstrap 粘页脚效果_javascript技巧

Bootstrap 粘页脚,说得具体一点就是"将固定高度的页脚紧贴页面底部".由于项目的实际情况和模板有所区别,所以参照模板,小编不能确保快速的完成"粘页脚"的效果,那么还是要给大家分享本教程,写的不好还请各位大侠海涵! 一.页面效果 页面非常简单,注意亮线为火狐边缘,可以很清楚的看到,页脚灰色部分沉浸在页面底部. 二.实例讲解 ①.代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona

用WPS Office2007制作个性化的页眉和页脚

我们看到,在WPS Office2007 版面设计方面,相对于报纸来说,杂志的版面要更简单些,编辑起来也更容易些,大多数内容都可以用分栏和插入文本框的方法来实现.关于分栏的问题,我们以前已经有所介绍,这里就不重复了. 与报纸不同的是,杂志的页眉页脚通常比较个性化,如图1所示,页眉中有个性图标.栏目名称.责任编辑以及投稿地址等内容.这些内容随专栏的不同而变化,主要是应用了"分节符",将不同的章节(或杂志的专栏)用"分节符"分开,再分别在各栏插入不同的内容即可.需要注意

WPS文字中制作个性化页眉页脚

我们看到,在 wps office2007 版面设计方面,相对于报纸来说,杂志的版面要更简单些,编辑起来也更容易些,大多数内容都可以用分栏和插入 文本框 的方法来实现.关于 分栏 的问题,我们以前已经有所介绍,这里就不重复了. 与报纸不同的是,杂志的 页眉页脚 通常比较个性化,如图1所示, 页眉 中有个性图标.栏目名称.责任编辑以及投稿地址等内容.这些内容随专栏的不同而变化,主要是应用了" 分节符 ",将不同的章节(或杂志的专栏)用"分节符"分开,再分别在各栏插入不

如何在word中任意页插入页眉页脚

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 最近去打印店看到很多毕业论文,发现很多人都在问"那个页眉页脚怎么弄",然后好心的打印店员工帮他们一一弄好,看到这里,不禁想写点东西告诉你们该怎么插入页眉页脚. 论文的排版一般都是要求:第一页是封面,第二页是目录,第三页是摘要,第四页以后是正文,最后是论文致谢.正文则要求编上页码,而封面.目录和前言可能不需要页码.以前往往弄

分页-如何利用css print media打印样式对网页进行打印处理?固定页头和页脚?要求每页都要显示

问题描述 如何利用css print media打印样式对网页进行打印处理?固定页头和页脚?要求每页都要显示 求助?如何控制打印时分页,要求对列分页和对表格数据分页,打印时不要出现滚动条?路过的大神帮帮忙啊!不胜感激.打印界面如上图所示,数据界面 解决方案 这是数据界面,点击打印按钮,弹出打印界面,并渲染打印界面 解决方案二: fixed定位,不出现滚动条设置overflow:hidden @media print{ #top#foot{position:fixed;width;100%;lef

js或css如何控制打印的页面,每页都有页眉页脚?求实例

问题描述 js或css如何控制打印的页面,每页都有页眉页脚?求实例 现在有一个需要打印的页面,要求打印时无论有几页,每页都要有相同的页眉页脚 解决方案 http://www.codefans.net/jscss/code/4193.shtml 解决方案二: css page-break-after:always; CSS控制打印区域

将HTML的页脚固定在屏幕下方

/********************************************************************* * 将HTML的页脚固定在屏幕下方 * 说明: * 处理的方法好像是比较多的,个人还是比较倾向于用JS进行处理. * * 2017-8-25 深圳 龙华樟坑村 曾剑锋 ********************************************************************/ 一.参考文档: 1. 将footer固定在页面底部

CSS实例:让页脚保持在未满屏页面的底部

  在内容不超过一屏的情况下,当浏览器窗口变小那行页脚文字会跟着向上浮动但还是保持在底部. Webjx.Com 当内容多出一屏时,他显示在网页的最下边,而不是窗口的最下边:测试了一下,还可以,在IE6.IE7.FF等都没有问题!窗口缩小时也没有问题! 首先是JS脚本:   function test(){  var infoHeight = document.getElementById("info").scrollHeight;  var bottomHeight = documen