您好,登錄后才能下訂單哦!
小編這次要給大家分享的是詳解如何使用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" > <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彈框插件的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。