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插件制作 自增长输入框实现代码
Aug 17 jQuery
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
May 20 jQuery
jQuery Ajax使用FormData上传文件和其他数据后端web.py获取
Jun 11 jQuery
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
May 09 jQuery
jQuery使用动画队列自定义动画操作示例
Jun 16 jQuery
jQuery实现的隔行变色功能【案例】
Feb 18 jQuery
jQuery内容选择器与表单选择器实例分析
Jun 28 jQuery
jQuery实现input[type=file]多图预览上传删除等功能
Aug 02 jQuery
JQuery使用属性addClass、removeClass和toggleClass实现增加和删除类操作示例
Nov 18 jQuery
jQuery实现手风琴效果(蒙版)
Jan 11 jQuery
jQuery+ajax实现文件上传功能
Dec 22 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
php根据日期显示所在星座的方法
2015/07/13 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
2019/10/17 PHP
一个简单的实现下拉框多选的插件可移植性比较好
2014/05/05 Javascript
JavaScript使用push方法添加一个元素到数组末尾用法实例
2015/04/06 Javascript
使用vue + less 实现简单换肤功能的示例
2018/02/21 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
vue中的watch监听数据变化及watch中各属性的详解
2018/09/11 Javascript
配置eslint规范项目代码风格
2019/03/11 Javascript
JavaScript中this用法学习笔记
2019/03/17 Javascript
jQuery zTree插件快速实现目录树
2019/08/16 jQuery
如何解决日期函数new Date()浏览器兼容性问题
2019/09/11 Javascript
openlayers实现地图弹窗
2020/09/25 Javascript
JavaScript的一些小技巧分享
2021/01/06 Javascript
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
详解Python中with语句的用法
2015/04/15 Python
Python封装shell命令实例分析
2015/05/05 Python
python获得文件创建时间和修改时间的方法
2015/06/30 Python
基于asyncio 异步协程框架实现收集B站直播弹幕
2016/09/11 Python
Python网络编程详解
2017/10/31 Python
Python实现PS图像调整之对比度调整功能示例
2018/01/26 Python
Python 字符串换行的多种方式
2018/09/06 Python
Python二叉树的镜像转换实现方法示例
2019/03/06 Python
python sorted方法和列表使用解析
2019/11/18 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
CSS3 实用技巧:实现黑白图像效果示例代码
2013/07/11 HTML / CSS
一款纯css3实现的漂亮的404页面的实例教程
2014/11/27 HTML / CSS
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
仓库主管的岗位职责
2013/12/04 职场文书
党员学习十八大感想
2014/01/17 职场文书
售后服务经理岗位职责范本
2014/02/22 职场文书
酒店前台接待岗位职责
2015/04/02 职场文书
2015年护士节活动策划方案
2015/05/04 职场文书
不同意离婚答辩状
2015/05/22 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
python内置进制转换函数的操作
2021/06/02 Python
node.js使用express-fileupload中间件实现文件上传
2021/07/16 Javascript