這篇文章主要講解了“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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。