一个简单的页面弹窗插件 jquery.pageMsgFrame.js
页面弹窗是网站中常用的交互效果,它可以强提示网站的某些信息给用户,或者作用于某些信息的修改等等功能。
这几天在做一个项目的时候,就顺捎把这个插件写一下,栽棵树,自己乘凉吧。
原创博文,转载请注明出处:http://www.cnblogs.com/dereksunok/p/3724764.html
html代码:
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>jQuery.pageMsgFrame</title>
<script src="jquery-1.7.2.min.js"></script>
<script src="jQuery.pageMsgFrame.js"></script>
</head>
<style>
*{ margin: 0;padding: 0;}
.msg { height: 180px; width: 400px; position: absolute; top: 240px; left: 50%; margin-left: -200px; background: #f00; color: #fff; z-index: 3;}
a{ color: #fff;}
button { margin: 10px;}
</style>
<body>
<button id="show">show</button>
<button id="fade">fade</button>
<button id="slideDown">slideDown</button> <div class="msg" style="display:none;">
<p align="right"><a class="close" href="javascript:void(0);">关闭</a></p>
<p class='content'>内容</p>
<p><a class="submit" href="javascript:void(0);">确定</a> <a class="close" href="javascript:void(0);">取消</a></p>
</div> <script>
$(function(){
$(window).pageMsgFrame({objFrame:'.msg',showBtn:'#show',closeBtn:'.close',effect:'normal',timer:400});
$(window).pageMsgFrame({objFrame:'.msg',showBtn:'#fade',closeBtn:'.close',effect:'fade',timer:600});
$(window).pageMsgFrame({objFrame:'.msg',showBtn:'#slideDown',closeBtn:'.close',effect:'slide',timer:400});
}) </script>
</body>
</html>
html代码中写明了三种不同状态的弹窗形式,show() 带时间参数的动画展示,fadeIn()展示,slideDown()展示。
必填的对象是objFrame:'.msg',showBtn:'#show',closeBtn:'.close'。
- objFrame-显示哪个模块
- showBtn-显示弹窗按钮
- closeBtn-关闭弹窗按钮
jQuery插件:
/*
* jQuery.pageMsgFrame.js
* v.1.0
* 2014-05-12
* derek sun
*/
(function($){ $.fn.pageMsgFrame = function(option){
//默认参数列表
var settings = {
showBtn:'',
closeBtn:'',
submitBtn:'',
objFrame:'',
effect:'',
//effect包含 normal fade slide _before:function(){
$.noop();
},
_after:function(){
$.noop();
},
_submit:function(){
$.noop();
},
_ajax:function(){
$.noop();
},
timer:0
}; var opts = $.extend(settings,option,{}); //show
$(opts.showBtn).live('click',function(){
opts._before();
showPageFrameLayer();
showFrame();
}) //hide
$(opts.closeBtn).live('click',function(){
$(opts.objFrame).add('.pageFrameLayer').fadeOut();
$(".pageFrameLayer").remove();
opts._after();
}) //_ajax
$(opts.submitBtn).live('click',function(){
opts._ajax();
}) function showFrame(){
switch(opts.effect){
case 'normal':
opts.timer?$(opts.objFrame).show(opts.timer):$(opts.objFrame).show();
break; case 'fade':
opts.timer?$(opts.objFrame).fadeIn(opts.timer):$(opts.objFrame).fadeIn();
break; case 'slide':
opts.timer?$(opts.objFrame).slideDown(opts.timer):$(opts.objFrame).slideDown();
break; default:
$(opts.objFrame).show();
break;
}
} function showPageFrameLayer(){
if(!$(".pageFrameLayer").length){
$("body").append('<div class="pageFrameLayer" style="height:100%; width: 100%; position: absolute; top:0; left:0; bottom:0; right:0; background: #000; opacity:0.4; z-index: 1; "></div>');
}
} } })(jQuery)
一个简单的页面弹窗插件 jquery.pageMsgFrame.js的更多相关文章
- 优秀的弹窗插件 jquery.lightbox_me.js
项目地址: https://github.com/buckwilson/Lightbox_me用法:http://buckwilson.me/lightboxme/ var opt = { 'cent ...
- 从0开始写一个简单的vite hmr 插件
从0开始写一个简单的vite hmr 插件 0. 写在前面 在构建前端项目的时候,除开基本的资源格式(图片,json)以外,还常常会需要导入一些其他格式的资源,这些资源如果没有第三方vite插件的支持 ...
- 一个简单的MariaDB认证插件demo
代码地址如下:http://www.demodashi.com/demo/13076.html 一.前言 众所周知(其实可能很多人不知道)MariaDB支持插件认证.在MariaDB中新建用户,常见的 ...
- 动态生成二维码插件 jquery.qrcode.js
前段时间做项目,需要动态生成一个二维码,于是就在网上找了一下发现一个jquery插件jquery.qrcode.js,所以今天就简单说一下这个插件的使用: jquery.qrcode.js是依赖jqu ...
- jQuery图片懒加载插件jquery.lazyload.js使用实例注意事项说明
jQuery图片懒加载插件jquery.lazyload.js使用实例注意事项说明 jquery.lazyload.js是一个用JavaScript编写的jQuery插件.它可以延迟加载长页面中的图片 ...
- jQuery懒加载插件jquery.lazyload.js使用说明实例
jQuery懒加载插件jquery.lazyload.js使用说明实例很多网站都会用到‘图片懒加载’这种方式对网站进行优化,即延迟加载图片或符合某些条件才开始加载图片.懒加载原理:浏览器会自动对页面中 ...
- jQuery插件 -- 表单验证插件jquery.validate.js, jquery.metadata.js
原文地址:http://blog.csdn.net/zzq58157383/article/details/7718352 最常使用JavaScript的场合就是表单的验证,而jQuery作为一个 ...
- jQuery响应式幻灯片插件jquery.glide.js(支持触摸&轻量级)
找到一款好的幻灯片插件不容易,找到一款功能全并且使用很简单的幻灯片更不容易,今天为大家分享一款全能的幻灯片插件glide.js,也是我现在在使用的一款插件. jquery.glide.js是响应和触摸 ...
- jQuery滚动条插件 – jquery.slimscroll.js
jquery.slimscroll.js插件是一个支持把内容放在一个盒子里面,固定一个高度,超出的则使用滚动.jquery.slimscroll.js不仅可以定义高度.宽度,还可以定义位置.滚动条大小 ...
随机推荐
- asp.net mvc HtmlHelperExt EnumDropDownList
public static class HtmlHelperExt { public static MvcHtmlString EnumDropDownList<TEnum>(this H ...
- Lua中的数据结构
1 数组:(lua习惯数组从1开始) a={} , do a[i]= end 2 阵和多维数组 : mt={}//新建一个表,表元素为表 ,N do mt[i]={}//新建一个表,里面的表元素为值 ...
- 微信小程序跳H5页面
主页面:index.wxml 主页面:index.js ↑跳转到另一个wxml页面→recharge.wxml recharge.wxml web-view中设置跳转h5的链接,可以加上需要的参数: ...
- 大型网站系统与java中间件实践-阅读笔记
线程池 ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, Bl ...
- Swift_错误处理
Swift_错误处理 点击查看源码 //错误处理 func test() { //错误枚举 需ErrorType协议 enum ErrorEnum: Error { case `default` // ...
- (Oracle)自定义调用AWR&ADDM
Oracle->自定义调用AWR&ADDM 需求描述: 前面设定每天自动生成AWR用于提供前一天的数据库状态信息,但因数据库和信息过多不利于直观检查.此次新增ADDM诊断. ADDM诊断 ...
- mysql中对于时间的处理,时间的滚动,求时间间隔,切换时区等等
mysql中对于时间的处理,时间的滚动,求时间间隔,切换时区等等 在mysql的使用过程中,有时候会出现对时间进行的操作,比如时间向前向后滚动,求2个时间的间隔,或者切换时区的操作 1,时间向前滚动( ...
- Flask第三方组件之flask_session
flask默认提供了session, 但是存在以下问题: ① session数据存在客户端, 不安全 ② 大小有限制 ③ 增加了客户端的压力 所以才产生了很多第三方的session机制, 我使用的是f ...
- day 28 黏包及黏包解决方案
1.缓冲区 每个socket被创建以后,都会分配两个缓冲区,输入缓冲区和输出缓冲区,默认大小都是8k,可以通过getsocket()获取,暂时存放传输数据,防止程序在发送的时候卡阻,提高代码运行效率. ...
- MySQL数据库的原理
点进去就是你历经千辛万苦找到的数据库的原理: https://www.cnblogs.com/smallyard/p/5626061.html