底部悬浮通栏可以关闭广告位的实现方法


Posted in Javascript onJune 01, 2016

效果一:

底部悬浮通栏可以关闭广告位的实现方法

1.首先,整个底部悬浮通栏广告是固定在浏览器的底部,随着浏览器的滚动,底部悬浮广告始终在浏览器窗口中。这里有几个关键点:通栏,固定,黑色。

所以:首先我们必须给悬浮通栏广告整体一个100%的宽度,其次给它设定固定定位,固定在浏览器底部,背景色为黑色,透明度为0.7。

.footfixed{
width:100%; 

height:140px;   /* 图片大小,宽度必须100% */

position:fixed;

bottom:0;     /*固定定位,固定在浏览器底部。*/

background: #081628;

opacity: .7;  /*Chrome、Safari、Firefox、Opera */ 

 filter:alpha(opacity=70);/* 针对 IE8 以及更早的版本 */
}

2. 底部悬浮通栏广告的图片,可以看出比背景要高(背景height:140px,内图height: 218px)

且整体内容部分居中。

.fimg {
   height: 218px;    /*注意此处图片高度高于140px*/
   width: 1190px; 
   margin: 0px auto;  /*整体内容部分居中*/
 }

然而由于底部悬浮广告内容部分高度218px大于设定的父元素的高度140px,高度相差78px

产生如下效果,图片没能完成的展现出来:

 底部悬浮通栏可以关闭广告位的实现方法

这需要图片上移78px,需要对整个底部悬浮广告内容部分整体做相对定位

.fimg {
   position: relative;  /*父元素相对定位*/
   top:-78px;
 }

结果:

底部悬浮通栏可以关闭广告位的实现方法

这里有个问题:

图片不是很清楚,因为加了透明度。

解决这个问题,用一个div来设置背景,而不在.footfixed里设置背景色。

<div class="ftbj"></div>
.ftbj{
  position: absolute;
  background:#081628;
  height:100%;
  width:100%;
  top: 0;
  left: 0;
  opacity: .7;/*Chrome、Safari、Firefox、Opera */ 
  filter: alpha(opacity=70);}/* 针对 IE8 以及更早的版本 */
.footfixed{
  width:100%; 
  height:140px;   /* 图片大小,宽度必须100% */
  position:fixed;
  bottom:0;     /*固定定位,固定在浏览器底部。*/
  background: #081628;
  opacity: .7;    /*Chrome、Safari、Firefox、Opera */     

filter:alpha(opacity=70);/* 针对 IE8 以及更早的版本 */
}

这样一来,效果图片:

底部悬浮通栏可以关闭广告位的实现方法

这样就清楚多了。

3.其中关闭按钮的效果:

首先按钮是由图片通过定位实现固定在整个底部悬浮广告图片右上角。需设定图片大小,图片引入路径,需要对整个底部悬浮广告内容部分整体做相对定位,关闭按钮是做绝对定位

.fimg {
  position: relative;  /*父元素相对定位*/
}
.close {
  width: 33px;
  height: 33px;     /* 图片大小 */
  background: url(images/close.png) no-repeat center center;  /*图片引入路径 */
  position: absolute;
  right: 15px;
  top: 85px;       /*通过定位实现固定固定在整个底部悬浮广告图片右上角 */
}

其次,鼠标移到关闭按钮上,有小手出现,关闭按钮旋转。

为了产生动画效果,加transition

.close {
  transition: .5s;
  cursor: pointer; /*通过定位实现固定固定在整个底部悬浮广告图片右上角 */
}
.close:hover {
  transform: rotate(180deg);
  -ms-transform: rotate(180deg);     /* IE 9 */
  -moz-transform: rotate(180deg);    /* Firefox */
  -webkit-transform: rotate(180deg);  /* Safari 和 Chrome */
  -o-transform: rotate(180deg);    /* Opera */
} /*旋转 图片*/

然后是点击关闭按钮,广告消失,侧边出现效果

底部悬浮通栏可以关闭广告位的实现方法

#fimg-min{
  width: 80px;
  height: 140px;           /* 图片大小 */
  position: fixed; 
  bottom: 0px; 
  left: 0px;             /*定位*/  
  display: none;          /*隐藏*/
  cursor: pointer;        /*小手 */
}

点击图中圈出来的图标,底部广告再次出现

<script>
$(document).ready(function(){
  $(".close").click(function () {
    $('.footfixed').animate(
      {height: '10px', opacity: '0.4'}, "slow", function () {
    $('.footfixed').hide();
    $('#fimg-min').show();
    });
  });  
  $('#fimg-min').click(function(){
      $('.footfixed').show().css({height:'140px',opacity:'1'});
      $('#fimg-min').hide();
  });  
});
</script>

注:在ie9以下浏览器中关闭按钮图片旋转效果未能实现。

以上这篇底部悬浮通栏可以关闭广告位的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js通过元素class名字获取元素集合的具体实现
Jan 06 Javascript
js实现索引图片切换效果
Nov 21 Javascript
JS遍历数组及打印数组实例分析
Jan 21 Javascript
浅析JS操作DOM的一些常用方法
May 13 Javascript
jquery ajaxfileupload异步上传插件使用详解
Feb 08 Javascript
JavaScript实现省市县三级级联特效
May 16 Javascript
详解Webpack DLL用法以及功能
Jul 11 Javascript
解决vue 格式化银行卡(信用卡)每4位一个符号隔断的问题
Sep 14 Javascript
Vuex 使用 v-model 配合 state的方法
Nov 13 Javascript
微信小程序之左右布局的实现代码
Dec 13 Javascript
开发Node CLI构建微信小程序脚手架的示例
Mar 27 Javascript
vue与iframe之间的信息交互的实现
Apr 08 Javascript
深入理解node exports和module.exports区别
Jun 01 #Javascript
jQuery基础知识点总结(DOM操作)
Jun 01 #Javascript
jQuery图片轮播插件——前端开发必看
May 31 #Javascript
JavaScript知识点总结(十六)之Javascript闭包(Closure)代码详解
May 31 #Javascript
JavaScript知识点总结(十一)之js中的Object类详解
May 31 #Javascript
基于jQuery实现点击列表加载更多效果
May 31 #Javascript
浅谈JavaScript 执行环境、作用域及垃圾回收
May 31 #Javascript
You might like
php &amp;&amp; 逻辑与运算符使用说明
2010/03/04 PHP
php array_unique之后json_encode需要注意
2011/01/02 PHP
php设计模式  Command(命令模式)
2011/06/17 PHP
php中0,null,empty,空,false,字符串关系的详细介绍
2013/06/20 PHP
php合并js请求的例子
2013/11/01 PHP
phpmyadmin出现Cannot start session without errors问题解决方法
2014/08/14 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
2014/08/28 PHP
PHP PDOStatement::getColumnMeta讲解
2019/02/01 PHP
Laravel6.2中用于用户登录的新密码确认流程详解
2019/10/16 PHP
使用JavaScript实现Java的List功能(实例讲解)
2013/11/07 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
javascript日期格式化方法汇总
2015/10/04 Javascript
javascript特殊文本输入框网页特效
2016/09/13 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
2017/02/12 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
2017/02/17 Javascript
angularjs项目的页面跳转如何实现(5种方法)
2017/05/25 Javascript
详解微信小程序中的页面代码中的模板的封装
2017/10/12 Javascript
js中DOM事件绑定分析
2018/03/18 Javascript
详解javascript对数组和json数组的操作
2019/04/15 Javascript
Vue 处理表单input单行文本框的实例代码
2019/05/09 Javascript
Vue分页插件的前后端配置与使用
2019/10/09 Javascript
Python实现的十进制小数与二进制小数相互转换功能
2017/10/12 Python
python3中的md5加密实例
2018/05/29 Python
Django模板导入母版继承和自定义返回Html片段过程解析
2019/09/18 Python
python中Lambda表达式详解
2019/11/20 Python
python迭代器常见用法实例分析
2019/11/22 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
使用Python项目生成所有依赖包的清单方式
2020/07/13 Python
Html5页面获取微信公众号的openid的方法
2020/05/12 HTML / CSS
HTML5 层的叠加的实现
2020/07/07 HTML / CSS
美国南加州的原创极限运动潮牌:Vans(范斯)
2016/08/05 全球购物
英国领先的电子、技术和办公用品购物网站:Ebuyer
2018/04/04 全球购物
班主任班级寄语大全
2014/04/04 职场文书
2014年档案室工作总结
2014/12/01 职场文书
2014年银行信贷员工作总结
2014/12/08 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android