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 replace方法去空格
May 08 jQuery
jQuery Validate 校验多个相同name的方法
May 18 jQuery
jQuery 循环遍历改变a标签的href(实例讲解)
Jul 12 jQuery
zTree jQuery 树插件的使用(实例讲解)
Sep 25 jQuery
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
Nov 10 jQuery
为jquery的ajax请求添加超时timeout时间的操作方法
Sep 04 jQuery
在vue项目中使用Jquery-contextmenu插件的步骤讲解
Jan 27 jQuery
详解JavaScript原生封装ajax请求和Jquery中的ajax请求
Feb 14 jQuery
JQuery Ajax跨域调用和非跨域调用问题实例分析
Apr 16 jQuery
jQuery实现判断滚动条滚动到document底部的方法分析
Aug 27 jQuery
jQuery 选择方法及$(this)用法实例分析
May 19 jQuery
jQuery带控制按钮轮播图插件
Jul 31 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
一个程序下载的管理程序(二)
2006/10/09 PHP
php 数组二分法查找函数代码
2010/02/16 PHP
Gambit vs CL BO3 第一场 2.13
2021/03/10 DOTA
js控制div及网页相关属性的代码
2009/12/19 Javascript
跟我一起学写jQuery插件开发方法(附完整实例及下载)
2010/04/01 Javascript
js读写cookie实现一个底部广告浮层效果的两种方法
2013/12/29 Javascript
js使用循环清空某个div中的input标签值
2014/09/29 Javascript
第四章之BootStrap表单与图片
2016/04/25 Javascript
详解nodeJS中读写文件方法的区别
2017/03/06 NodeJs
基于JavaScript实现图片剪切效果
2017/03/07 Javascript
Vue声明式渲染详解
2017/05/17 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
AngularJS实现进度条功能示例
2017/07/05 Javascript
支付宝小程序自定义弹窗dialog插件的实现代码
2018/11/30 Javascript
深入了解响应式React Native Echarts组件
2019/05/29 Javascript
解决layui的radio属性或别的属性没显示出来的问题
2019/09/26 Javascript
vscode中Vue别名路径提示的实现
2020/07/31 Javascript
编程语言Python的发展史
2014/09/26 Python
详解Python自建logging模块
2018/01/29 Python
Flask框架实现的前端RSA加密与后端Python解密功能详解
2019/08/13 Python
python3.6中@property装饰器的使用方法示例
2019/08/17 Python
python自动保存百度盘资源到百度盘中的实例代码
2019/08/26 Python
tensorflow中tf.reduce_mean函数的使用
2020/04/19 Python
SVG实现多彩圆环倒计时效果的示例代码
2017/11/21 HTML / CSS
美国最大的香水出口:FragranceX.com
2017/11/04 全球购物
酒店管理专业学生求职信
2013/09/27 职场文书
作弊检讨书1000字
2014/02/01 职场文书
晨会主持词
2014/03/17 职场文书
新教师培训方案
2014/06/08 职场文书
环境保护与污染治理求职信
2014/07/16 职场文书
验房委托书
2014/08/30 职场文书
教师群众路线心得体会
2014/11/04 职场文书
转让协议书
2015/01/27 职场文书
学生病假条范文
2015/08/17 职场文书
SONY600GR,国产收音机厂商永远的痛
2022/04/05 无线电
CSS文本阴影 text-shadow 悬停效果详解
2022/05/25 HTML / CSS