自写jQuery插件,实现简单网页遮罩层/弹出层功能,兼容IE6、IE7
https://blog.csdn.net/u010480479/article/details/25159287
本屌丝近期工作要求重写站点全部代码,so...极其蛋疼的事情出现了。管我的人要求不能用网上的插件。oh~~~my god!! 这是多么能让千万仅仅草原上的马儿奔腾的要求~~~
先实现一个比較简单的功能:
需求:网页遮罩层/弹出层。兼容IE6
幸好本屌丝曾经聪明收集了个js的版本号,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);
哈哈,是不是非常easy,可是此处有个比較大的bug,没法让IE6支持背景色透明。所以。在IE6的显示下,就会出现一大片屎黑色~~~~
如今来说说用法:
第一步:引用jquery文件。这个不多说。自己下去吧,http://jquery.com
第二步:把我这个插件引用进去,这个也不多说,自己下去吧,http://download.csdn.net/download/u010480479/7305857
第三步:你看。你要显示在中间的内容box,我是不是没法给你实现,所以,须要你自己建一个,放在网页最下端就可以,
eg:
<div id="kabulore-layer"><div class="box_container">弹弹弹,弹走鱼尾纹~~</div>
</div>
第四步:在你要弹出来这个内容框的地方加个时间。以click为例:
$("#tan").click(function(){$("#kabulore-layer").layer();
});
大功告成!
注:此插件是点击灰色区域的时候,该弹出层自己主动隐藏,假设想加个关闭button再隐藏,可自己写一下close事件
如有不论什么交流或者不吝赐教,请联系:http://www.yinmu.me
兴许完好版会逐渐跟上,眼下在赶项目。比較苦逼的忙~~
转载于:https://www.cnblogs.com/mqxnongmin/p/10868503.html
自写jQuery插件,实现简单网页遮罩层/弹出层功能,兼容IE6、IE7相关推荐
- jquery简单实现点击弹出层效果实例
先看效果图: 完整例子: <!-- 渐变弹出层 --> <div id="race"><a href="#">点击</ ...
- 自写图片遮罩层放大功能jquery插件源代码,photobox.js 1.0版,不兼容IE6
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u010480479/article/details/27362147 阿嚏~~~ 话说本屌丝没啥开发 ...
- 网页制作常见的问题(怎样兼容IE6/IE7/火狐浏览器)
1.IE6双边距问题? 在IE6的浏览器中明明设置的是10px的margin却为什么显示的是20px的margin其实这个Ie6的一个双边距BUG 例如: <style type="t ...
- 遮罩层和弹出层(居中)
<!DOCTYPE html> <html><head><meta charset="utf-8"><title>居中弹 ...
- html flash 兼容ie7,网页制作常见的面试题(怎样兼容IE6/IE7/火狐浏览器)
1.IE6双边距问题? 在IE6的浏览器中明明设置的是10px的margin却为什么显示的是20px的margin其实这个Ie6的一个双边距BUG 例如: 因为加上浮动后就会多出一倍的边距,浮动后本来 ...
- Jquery 点击图片在弹出层显示大图
[转]Jquery 点击图片在弹出层显示大图 使用jquery, 实现点击图片在弹出层显示大图,再次点击关闭,加入图片高宽和窗口高宽的大小判断. 效果图片: 1.点击前的效果: 2.点击后的效果: h ...
- html点击图片弹出大图特效代码,Jquery 点击图片在弹出层显示大图
使用jquery,实现点击图片在弹出层显示大图,再次点击关闭,加入图片高宽和窗口高宽的大小判断. 效果图片如下: 1.点击前的效果: 2.点击后的效果: html代码如下: 弹出层图片 Js代码如下: ...
- 分享一个灰常简单好用的jQuery弹出层插件:jquery.artwl.thickbox.js
最终效果: 插件原理 所有弹出层的原理都差不多,就是用一个全屏半透明DIV做遮罩层,在这个遮罩层上再显示出一个层放要显示的内容,其他的就是CSS的运用了. 本插件为了使用简单,把JS跟CSS封装在了一 ...
- 一个简单的遮罩弹出层效果
为什么80%的码农都做不了架构师?>>> 打酱油的日子就是要多学习下,最近在学写JS类库,虽然有面对对象语言的基础,但是感觉入手前端还是压力很大,就JS来说,干了半年了,水准还 ...
最新文章
- VS中快速生成dll和lib方法
- Cassandra 原理介绍
- java gc 触发_Java GC种类和触发时机
- elasticsearch api中的delete操作
- jvm垃圾回收机制_JVM 垃圾回收机制之堆的分代回收
- ubuntu1404_server搭建lamp
- Unix——学习《Unix环境高级编程》找不到“apue.h”方法
- 福州三中 计算机竞赛,重磅快讯 | 刚刚,信息学奥赛世界金牌得主钟子谦凯旋!...
- 电子商务型网站该如何选择虚拟主机
- 【word】设置背景为绿豆沙保护色
- 自定义进度条PictureProgressBar——从开发到开源发布全过程
- 01.ingest pipeline的使用简介
- 什么是 Scrum 中的 Timeboxing? 1
- 数学之美:维特比和维特比算法
- HTMLParser 使用详解
- 个人收款码和商家收款码有哪些区别
- Archlinux双显卡安装NVIDIA闭源驱动
- Methyltetrazine-PEG8-DBCO,甲基四嗪--八聚乙二醇-二苯并环辛炔
- Vue计算属性和函数的区别
- ORB-SLAM2代码详解08: 局部建图线程LocalMapping
热门文章
- Mac蓝牙解决方案汇总
- Docker部署ELK(ElasticSearch logstash Kibana)
- 【12.4】ThreadPollExecutor和asyncio完成阻塞io请求
- 1087 All Roads Lead to Rome (30 分)
- [战略]最近整理代码的一些总结和未来规划
- python 企业发放的奖金根据利润提成
- mobiscroll实践:移动端仿苹果select效果的实现
- Understanding Diffusion Models
- 数据库:Mysql中“select ... for update”排他锁分析
- 露眼看App--怎样做一款旅游类的App ?