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 本页面传值实现代码
May 17 Javascript
JS实现双击屏幕滚动效果代码
Oct 28 Javascript
JavaScript对象创建模式实例汇总
Oct 03 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
Nov 07 Javascript
Bootstrap缩略图的创建方法
Mar 22 Javascript
webpack独立打包和缓存处理详解
Apr 03 Javascript
详解微信小程序与内嵌网页交互实现支付功能
Oct 22 Javascript
探索JavaScript中私有成员的相关知识
Jun 13 Javascript
Vue 实现点击空白处隐藏某节点的三种方式(指令、普通、遮罩)
Oct 23 Javascript
JavaScript Window窗口对象属性和使用方法
Jan 19 Javascript
Nest.js 授权验证的方法示例
Feb 22 Javascript
vue完美实现el-table列宽自适应
May 08 Vue.js
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
如何隐藏你的.php文件
2007/01/04 PHP
php安全之直接用$获取值而不$_GET 字符转义
2012/06/03 PHP
改写函数实现PHP二维/三维数组转字符串
2013/09/13 PHP
PHP实现HTML生成PDF文件的方法
2014/11/07 PHP
php一行代码获取文件后缀名实例分析
2014/11/12 PHP
ThinkPHP3.2框架操作Redis的方法分析
2019/05/05 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
2020/01/23 PHP
form中限制文本字节数js代码
2007/06/10 Javascript
javascript Firefox与IE 替换节点的方法
2010/02/24 Javascript
jQuery 过滤方法filter()选择具有特殊属性的元素
2014/06/15 Javascript
控制台报错object is not a function的解决方法
2014/08/24 Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
2015/02/28 Javascript
jQuery实现360°全景拖动展示
2015/03/18 Javascript
jquery分页插件jquery.pagination.js实现无刷新分页
2016/04/01 Javascript
深入浅析search 搜索框的写法
2016/08/02 Javascript
js实现悬浮窗效果(支持拖动)
2017/03/09 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
2017/10/26 Javascript
Parcel.js + Vue 2.x 极速零配置打包体验教程
2017/12/24 Javascript
javascript标准库(js的标准内置对象)总结
2018/05/26 Javascript
video.js添加自定义组件的方法
2020/12/09 Javascript
详解Python的Django框架中的模版继承
2015/07/16 Python
python与C互相调用的方法详解
2017/07/14 Python
对Python中class和instance以及self的用法详解
2019/06/26 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
2019/08/15 Python
Python3.8对可迭代解包的改进及用法详解
2019/10/15 Python
记录模型训练时loss值的变化情况
2020/06/16 Python
Python实现PS滤镜中的USM锐化效果
2020/12/04 Python
美国生日蛋糕店:Bake Me A Wish!
2017/02/08 全球购物
Mio Skincare英国官网:身体紧致及孕期身体护理
2018/08/19 全球购物
工艺工程师工作职责
2013/11/23 职场文书
南京青奥会口号
2014/06/12 职场文书
给医院的感谢信
2015/01/21 职场文书
2015年物业管理工作总结
2015/04/23 职场文书
食品卫生管理制度
2015/08/06 职场文书
创业计划书之书店
2019/09/10 职场文书
Python如何解决secure_filename对中文不支持问题
2021/07/16 Python