这是一款带19种炫酷CSS3过渡动画的jQuery模态窗口插件。该插件基于Codrops的ModalWindowEffects来制作,通过jQuery插件的方式来统一管理各种打开模态窗口的效果。
安装
可以通过bower来安装该模态窗口插件。
bower install foxythemes-niftymodals |
使用方法
在页面中引入jquery.niftymodals.css和jquery、jquery.niftymodals.js文件。
< link rel = "stylesheet" href = "dist/css/jquery.niftymodals.css" > < script src = "path/to/jquery.min.js" ></ script > < script src = "dist/js/jquery.niftymodals.js" ></ script > |
HTML结构
模态窗口的基本HTML结构如下:
< div class = "md-dialog md-effect-1 md-show" id = "your-modal-id" > < div class = "md-content" > <!-- your content --> </ div > </ div > < div class = "md-overlay" ></ div > |
初始化插件
在页面DOM元素加载完毕之后,可以通过在按钮或超链接上绑定niftyModal()
方法来打开模态窗口。
$( '#button-id' ).on( 'click' , function (){ $( '#modal-id' ).niftyModal(); }); |
配置参数
在对模态窗口初始化时,可以以对象的方式传入一些配置参数:
$( '#modal-id' ).niftyModal({ overlaySelector: '.md-overlay' , //模态窗口遮罩层的class类 closeSelector: '.md-close' , //模态窗口关闭按钮元素的class类 classAddAfterOpen: 'md-show' , //Body control class //This object will be available in the modal events data: { some_data: '' }, //This option allow to attach a callback to a button with the class 'md-close' buttons: [ { class: 'btn-ok' , callback: function ( btn, modal, event ) { //You can cancel the modal hide event by returning false alert( "You need to check your info!" ); return false ; } }, { class: 'btn-cancel' , callback: function ( btn, modal, event ) { //You can access to the mocal data here var modal_data = modal.data.some_data; } } ], beforeOpen: function ( modal ){ //You can cancel the modal show event by returning false }, afterOpen: function ( modal ){ //Executed after show event }, beforeClose: function ( modal ){ //You can cancel the hide event by returning false }, afterClose: function ( modal ){ //Executed after hide event } }); |
或者你可以通过下面的方法来设置默认的配置参数:
$.fn.niftyModal( 'setDefaults' ,{ overlaySelector: '.modal-overlay' , closeSelector: '.modal-close' , classAddAfterOpen: 'modal-show' , }); |
与Bootstrap结合使用
该插件可以和Bootstrap结合使用,你只需要引入jquery.niftymodals.bootstrap.css文件。
< link rel = "stylesheet" type = "text/css" href = "[your path]/dist/jquery.niftymodals.bootstrap.css" > |
这个css样式表包含了对原生Bootstrap模态窗口组件的一些重写样式,例如:modal-header
、modal-content
和modal-footer
等。
jquery-niftymodals模态窗口插件的github地址为:https://github.com/foxythemes/jquery-niftymodals。