jQuery实现简单网页遮罩层/弹出层效果兼容IE6、IE7


Posted in Javascript onJune 16, 2014

本?潘孔罱?ぷ饕?笾匦赐?舅?写?耄?o...极其蛋疼的事情出现了,管我的人要求不能用网上的插件,oh~~~my god!! 这是多么能让千万只草原上的马儿奔腾的要求~~~

先实现一个比较简单的功能:

需求:网页遮罩层/弹出层,兼容IE6

幸好本?潘恳郧按厦魇占?烁?s的版本,so,自己改写成了jQuery插件形式的,方便以后使用。

屁话不多放,无码无真相!

/******************************* 
* @name Layer跨浏览器兼容插件 v1.0 
*******************************/ 
;(function($){ 
$.fn.layer = function(){ 
var isIE = (document.all) ? true : false; 
var isIE6 = isIE && !window.XMLHttpRequest; 
var position = !isIE6 ? "fixed" : "absolute"; 
var containerBox = jQuery(this); 
containerBox.css({"z-index":"9999","display":"block","position":position ,"top":"50%","left":"50%","margin-top": -(containerBox.height()/2)+ "px","margin-left": -(containerBox.width()/2) + "px"}); 
var layer=jQuery("<div></div>"); 
layer.css({"width":"100%","height":"100%","position":position,"top":"0px","left":"0px","background-color":"#000","z-index":"9998","opacity":"0.6"}); 
jQuery("body").append(layer); 
function layer_iestyle(){ 
var maxWidth = Math.max(document.documentElement.scrollWidth, document.documentElement.clientWidth) + "px"; 
var maxHeight = Math.max(document.documentElement.scrollHeight, document.documentElement.clientHeight) + "px"; 
layer.css({"width" : maxWidth , "height" : maxHeight }); 
} 
function containerBox_iestyle(){ 
var marginTop = jQuery(document).scrollTop - containerBox.height()/ 2 + "px"; 
var marginLeft = jQuery(document).scrollLeft - containerBox.width()/ 2 + "px"; 
containerBox.css({"margin-top" : marginTop , "margin-left" : marginLeft }); 
} 
if(isIE){ 
layer.css("filter","alpha(opacity=60)"); 
} 
if(isIE6){ 
layer_iestyle(); 
containerBox_iestyle(); 
} 
jQuery("window").resize(function(){ 
layer_iestyle(); 
}); 
layer.click(function(){ 
containerBox.hide(); 
jQuery(this).remove(); 
}); 
}; 
})(jQuery);

哈哈,是不是很简单,但是此处有个比较大的bug,没法让IE6支持背景色透明,所以,在IE6的显示下,就会出现一大片屎黑色~~~~

现在来说说使用方法:

第一步:引用jquery文件,这个不多说,自己下去吧,http://jquery.com

第二步:把我这个插件引用进去,这个也不多说,点击下载,

第三步:你看,你要显示在中间的内容box,我是不是没法给你实现,所以,需要你自己建一个,放在网页最下端即可,

eg:

<div id="kabulore-layer"> 
<div class="box_container"> 
弹弹弹,弹走鱼尾纹~~ 
</div> 
</div>

第四步:在你要弹出来这个内容框的地方加个时间,以click为例:
$("#tan").click(function(){ 
$("#kabulore-layer").layer(); 
});

大功告成!

注:此插件是点击灰色区域的时候,该弹出层自动隐藏,如果想加个关闭按钮再隐藏,可自己写一下close事件

Javascript 相关文章推荐
js数组操作学习总结
Nov 04 Javascript
jQuery实现预加载图片的方法
Mar 17 Javascript
JS实现从连接中获取youtube的key实例
Jul 02 Javascript
JavaScript中获取HTML元素值的三种方法
Jun 20 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
Aug 11 Javascript
bootstrap中的 form表单属性role=&quot;form&quot;的作用详解
Jan 20 Javascript
JS控件bootstrap suggest plugin使用方法详解
Mar 25 Javascript
vue中axios解决跨域问题和拦截器的使用方法
Mar 07 Javascript
Vue入门学习笔记【基本概念、对象、过滤器、指令等】
Apr 13 Javascript
Vue 中如何正确引入第三方模块的方法步骤
May 05 Javascript
在vue项目中使用sass语法问题
Jul 18 Javascript
JS在Array数组中按指定位置删除或添加元素对象方法示例
Nov 19 Javascript
jquery网页回到顶部效果(图标渐隐,自写)
Jun 16 #Javascript
解决checkbox的attr(checked)一直为undefined问题
Jun 16 #Javascript
Javascript实现简单的富文本编辑器附演示
Jun 16 #Javascript
javascript操纵OGNL标签示例代码
Jun 16 #Javascript
jQuery图片切换插件jquery.cycle.js使用示例
Jun 16 #Javascript
select多选 multiple的使用示例
Jun 16 #Javascript
一个可以增加和删除行的table并可编辑表格中内容
Jun 16 #Javascript
You might like
桌面中心(二)数据库写入
2006/10/09 PHP
PHP智能识别收货地址信息实例
2019/01/05 PHP
js使用removeChild方法动态删除div元素
2014/08/01 Javascript
改变checkbox默认选中状态及取值的实现代码
2016/05/26 Javascript
jQuery实现的tab标签切换效果示例
2016/09/05 Javascript
node+express制作爬虫教程
2016/11/11 Javascript
微信小程序(三):网络请求
2017/01/13 Javascript
微信小程序 this和that详解及简单实例
2017/02/13 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
ReactNative Image组件使用详解
2017/08/07 Javascript
详解axios 全攻略之基本介绍与使用(GET 与 POST)
2017/09/15 Javascript
Vue实现仿iPhone悬浮球的示例代码
2020/03/13 Javascript
JavaScript实现网页tab栏效果制作
2020/11/20 Javascript
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
python获取远程图片大小和尺寸的方法
2015/03/26 Python
Python求两个文本文件以行为单位的交集、并集与差集的方法
2015/06/17 Python
python回调函数中使用多线程的方法
2017/12/25 Python
将Dataframe数据转化为ndarry数据的方法
2018/06/28 Python
用python实现将数组元素按从小到大的顺序排列方法
2018/07/02 Python
Python读取csv文件分隔符设置方法
2019/01/14 Python
Django Admin中增加导出Excel功能过程解析
2019/09/04 Python
Django基于Models定制Admin后台实现过程解析
2020/11/11 Python
CSS3实现图片抽屉式效果的示例代码
2019/11/06 HTML / CSS
htnl5利用svg页面高斯模糊的方法
2018/07/20 HTML / CSS
RentCars.com巴西:汽车租赁网站
2016/08/22 全球购物
Gap英国官网:Gap UK
2018/07/18 全球购物
美国克罗格超市在线购物:Kroger
2019/06/21 全球购物
FC-Moto丹麦:欧洲最大的摩托车服装和头盔商店之一
2019/08/20 全球购物
销售人员自我评价怎么写
2013/09/19 职场文书
高三自我鉴定范文
2013/10/19 职场文书
优秀毕业大学生推荐信
2013/11/13 职场文书
ktv收银员岗位职责
2013/12/16 职场文书
2015年超市工作总结范文
2015/05/26 职场文书
2015年科普工作总结
2015/07/23 职场文书
Java集成swagger文档组件
2021/06/28 Java/Android
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python