您好,登錄后才能下訂單哦!
這篇文章主要講解了“JQuery如何自定義模態框效果”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JQuery如何自定義模態框效果”吧!
重點:基于jQuery ,也可改造成原生模態框
功能:
1、可以自定義模態框的寬高等等一系列css樣式;
2、關閉、提交都可以執行自定義的回調函數;
3、js和html分離,除了部分帶了js功能的class不能遺漏之外,其他的都可自行增減
html代碼:
<div class="dialog-tiya" id="voteModal"> <div class="modalBg-tiya"></div> <div class="customModal-tiya"> <div class="close"></div> <div class="modal-title"> 批量投票 </div> <div class="modal-body"> <p class="text-center color8bb7f9">是否批量開啟所選隊伍的投票?</p> </div> <div class="modal-footer"> <div class="button-refer">批量開啟</div> <div class="button-cancel">批量關閉</div> </div> </div> </div>
css代碼:
.dialog-tiya{ display:none; } .modalBg-tiya { width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); position: fixed; z-index: 2; left: 0; top: 0; } .customModal-tiya { position: fixed; width: 40%; height: 50%; z-index: 3; left: 0; top: 0; bottom: 0; right: 0; margin: auto; border-radius: 5px; padding: 15px; box-sizing: border-box; background: #fff; } .customModal-tiya .modal-title { font-size: 18px; margin: 40px auto; color:#000; text-align:center; } .customModal-tiya .modal-footer { position: absolute; bottom: 15px; right: 15px; left: 15px; text-align: center; } .customModal-tiya .modal-footer .button-refer, .customModal-tiya .modal-footer .button-cancel { width: 40%; height: 38px; line-height: 38px; text-align: center; border:1px solid #6893ff; font-size:16px; border-radius: 5px; display: inline-block; } .customModal-tiya .modal-footer .button-refer { margin-right: 10px; background: #6893ff; color:#fff; } .customModal-tiya .modal-footer .button-cancel { margin-left: 10px; color:#6893ff; } .customModal-tiya .close{ position:absolute; right:15px; top:15px; width: 22px; height:22px; background:#8bb7f9 url("../public/images/gb_icon.png") no-repeat;/*自己換icon*/ background-size:100% 100%; cursor:pointer; } .customModal-tiya .modal-body{ font-size:18px; } .text-center{ text-align:center; } .color8bb7f9{ color:#8bb7f9; }
modal.js:
function CustomModal(ele,options,callback){ this.ele = ele; this.init(ele,options,callback); } customModal.prototype.init = function(ele,options,callback){ ele.show(); if(options.style){ var target = ele.find(".customModal-tiya"); $.each(options.style,function(index,item){ target.css(index,item) }) } callback && callback(); if(options.close){ ele.find(".close").click(function(){ ele.hide(); options.close && options.close(); }) } if(options.submit){ ele.find(".button-refer").click(function(){ ele.hide(); options.submit && options.submit(); }) } if(options.cancel) { ele.find(".button-cancel").click(function(){ ele.hide(); options.cancel && options.cancel(); }) } }
最后一步,調用:
$(function(){ var voteModal = new CustomModal($("#voteModal"),{ style:{ 'min-height':'300px', 'min-width':'600px', }, close:function(){ alert(2) }, submit:function(){ alert(3) }, cancel:function(){ alert(4) }},function(){ alert(1) }) })
感謝各位的閱讀,以上就是“JQuery如何自定義模態框效果”的內容了,經過本文的學習后,相信大家對JQuery如何自定義模態框效果這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。