jQuery弹框插件使用方法详解


Posted in jQuery onMay 26, 2020

本文实例为大家分享了jQuery弹框插件使用的具体代码,供大家参考,具体内容如下

要点 :

1、匿名函数包裹器(可搜索一下)
2、面向对象的编程
3、插件的要素(扩展jQuery本身的方法,$.extend ; 给jQuery对象添加方法,对jQuery.prototype进行扩展 ;添加一个函数到jQuery.fn(jQuery.prototype)对象,该函数的名称就是你的插件名称)
4、代码部分: 注意html中 a 标签的内容 , js中格式的注意 , css的话嫌麻烦你可以自己定义
5、优点: 引用插件 后 , 标签书写正确 , 无须再调用插件名可直接显示弹框

<!DOCTYPE html>
<html>

 <head>
 <meta charset="UTF-8" />
 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
 <title>用户管理-员工管理</title>
 <!-- <link rel="stylesheet" href="../css/main-style.css" >
 <link rel="stylesheet" href="../css/part-style.css" >
  <style type="text/css">

 .input-new-content>.input-list>select{
 width: 380px;
 height: 45px;
 border: 1px solid #ddd;
 border-radius: 5px;
 margin-top: 13px;
 text-indent: 10px;
 }

 </style> -->
 </head>

 <body>

 <!-- container-part -->
 <div id="container-part">

 <!-- part-display-content -->
 <div id="display-content">
   <a href="#changeable-box" type="open">click me</a>
 </div>

 </div>


 <div id="changeable-box" style="display: none">
 <div class="change-password-content">
 <div class="title-to-change">
  <p>标题</p>
  <a class="close-this-content" href="#changeable-box" type="close"></a>
 </div>
 <div class="input-new-content">
   <div class="input-list">
  <select class="" name="">
  <option value=""></option>
  </select>
  </div>
  <div class="input-list">
  <input type="text" name="" value="">
  </div>
  <div class="input-list">
  <input type="text" name="" value="" placeholder="确认密码">
  </div>
 </div>
 <div class="choose-newPassword-status">
  <a class="save-newPassword" href="#changeable-box" type="close">保存</a>
  <a class="cancel-changePassword" href="#changeable-box" type="close">取消</a>
 </div>
 </div>
 </div>

 <!-- <script type="text/javascript" src="../js/jquery-1.11.1.min.js"></script> jquery引用-->
 <script type="text/javascript">
 ;(function($ , window , document , undefined){
 $.jModal = function(ele , opt) {
  var target;
  this.$body = $('body');
  this.options = $.extend({} , $.jModal.defaults , opt);
  this.blocker = $('<div class="shadowblock"></div>');
  target = ele.attr('href');
  this.$elm = $(target)
  if (ele.attr('type') == 'open') {
  this.open();
  }
  else if (ele.attr('type') == 'close'){
  this.hide();
  }
  else {
  return false
  }
 }

 $.jModal.prototype = {

 open: function(){
  this.$elm.css({
  position: 'fixed',
  width: '440px',
  height: 'auto',
  fontSize: 'var(--base-font-size)',
  color: '#515355',
  background: '#fff',
  boxShadow: '0 0 2px 1px #eee',
  top: '50%',
  left: '50%',
  transform: 'translate(-50% , -50%)',
  zIndex: 3
  });

  if (this.options.showSpinner) {
  this.showSpinner()
  }
  this.show()
 },

 // 遮罩显示
 showSpinner: function() {
  this.blocker.css({
  position: 'fixed',
  width: '9999vw',
  height: '9999vh',
  left: 0,
  top: 0,
  background: '#000',
  opacity: .7,
  zIndex: 2,
  })
  this.$body.append(this.blocker);
 },

 // 弹框显示
 show: function() {
  this.$elm.show()
 },

 // 隐藏弹框 & 移除遮罩
 hide: function() {
  this.$elm.hide()
  $('.shadowblock').remove();
 }
 }

 $.jModal.defaults = {
 showSpinner: false ,
 }

 $.fn.jModal = function(options) {
 new $.jModal(this , options)
 return this
 }

 $(document).on('click' , 'a' , function(event){
 event.preventDefault()
 $(this).jModal()
 })
 })(jQuery , window , document)
 </script>
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery插件FusionWidgets实现的Bulb图效果示例【附demo源码下载】
Mar 23 jQuery
jQuery遮罩层实例讲解
May 11 jQuery
jquery网页加载进度条的实现
Jun 01 jQuery
jquery实现侧边栏左右伸缩效果的示例
Dec 19 jQuery
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
jQuery+CSS实现的table表格行列转置功能示例
Jan 08 jQuery
jQuery实现左右滑动的toggle方法
Mar 03 jQuery
jQuery实现的上传图片本地预览效果简单示例
Mar 29 jQuery
jQuery选择器选中最后一个元素,倒数第二个元素操作示例
Dec 10 jQuery
jquery检测上传文件大小示例
Apr 26 jQuery
jQuery实现本地存储
Dec 22 jQuery
jquery实现广告上下滚动效果
Mar 04 jQuery
jQuery实现的分页插件完整示例
May 26 #jQuery
jQuery 选择器用法实例分析【prev + next】
May 22 #jQuery
jQuery--遍历操作实例小结【后代、同胞及过滤】
May 22 #jQuery
jquery更改元素属性attr()方法操作示例
May 22 #jQuery
jquery绑定事件 bind和on的用法与区别分析
May 22 #jQuery
jQuery实现移动端笔触canvas电子签名
May 21 #jQuery
jQuery HTML获取内容和属性操作实例分析
May 20 #jQuery
You might like
常用星际术语索引(新手指南)
2020/03/04 星际争霸
一次编写,随处运行
2006/10/09 PHP
php阿拉伯数字转中文人民币大写
2015/12/21 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
php实现简单加入购物车功能
2017/03/07 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
基于ThinkPHP删除目录及目录文件函数
2020/10/28 PHP
JavaScript入门教程(7) History历史对象
2009/01/31 Javascript
JavaScript 学习笔记(十五)
2010/01/28 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
2014/09/22 Javascript
js父页面与子页面不同时显示的方法
2014/10/16 Javascript
JavaScript数组常用方法
2015/03/02 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
js基础知识(公有方法、私有方法、特权方法)
2015/11/06 Javascript
JS读写CSS样式的方法汇总
2016/08/16 Javascript
原生JavaScript实现Ajax异步请求
2017/11/19 Javascript
Angular 5.x 学习笔记之Router(路由)应用
2018/04/08 Javascript
如何使用three.js 制作一个三维的推箱子游戏
2020/07/29 Javascript
[01:10]DOTA2亚洲邀请赛 征战号角响彻全场
2015/01/06 DOTA
Python实现简单状态框架的方法
2015/03/19 Python
python3实现暴力穷举博客园密码
2016/06/19 Python
Python探索之创建二叉树
2017/10/25 Python
利用python3随机生成中文字符的实现方法
2017/11/24 Python
Python Series从0开始索引的方法
2018/11/06 Python
python感知机实现代码
2019/01/18 Python
python模拟实现斗地主发牌
2020/01/07 Python
浅谈django 模型类使用save()方法的好处与注意事项
2020/03/28 Python
Python基于smtplib模块发送邮件代码实例
2020/05/29 Python
python实现发送邮件
2021/03/02 Python
成考报名单位证明范本
2014/01/16 职场文书
书香校园活动方案
2014/02/28 职场文书
高中军训第一天感言
2014/03/06 职场文书
个人安全承诺书
2014/05/22 职场文书
快递员岗位职责
2014/09/12 职场文书
乡镇党委书记第三阶段个人整改措施
2014/09/16 职场文书
班主任寄语2016
2015/12/04 职场文书