iziModal-時尚炫酷的jQuery模態(tài)窗口插件

2021-10-18 16:22 更新

ie兼容10
插件描述:iziModal是一款時尚炫酷的jQuery模態(tài)窗口插件。該模態(tài)窗口插件提供基本的打開模態(tài)窗口動畫特效,并且可以調(diào)用iframe內(nèi)容,Ajax加載,制作alert效果,加載超大內(nèi)容等。

使用方法

在頁面中引入iziModal.min.css和jquery、iziModal.min.js文件。

<link rel="stylesheet" href="iziModal.min.css">
<script src="jquery.min.js" type="text/javascript"></script>
<script src="iziModal.min.js" type="text/javascript"></script>

HTML結(jié)構(gòu)

可以通過按鈕或<a>元素來觸發(fā)一個模態(tài)窗口。

<!-- Trigger to open Modal -->
<a href="#" class="trigger">打開模態(tài)窗口</a>
<!-- 模態(tài)窗口 -->
<div id="modal">
    <!-- 模態(tài)窗口的內(nèi)容 -->
</div>

初始化插件

在頁面DOM元素加載完畢之后,可以通過iziModal()方法來初始化該模態(tài)窗口插件。

$("#modal").iziModal();

或者也可以通過jqurey事件來打開模態(tài)窗口。

$(document).on('click''.trigger'function (event) {
    event.preventDefault();
    $('#modal').iziModal('open'this); // 需要帶上 "this"
});

Iframe

要在模態(tài)窗口中使用iframe功能,結(jié)構(gòu)如下:

<a href="http://www.jq22.com" class="trigger">打開模態(tài)窗口</a>

初始化:

$("#modal").iziModal({
    iframe: true,
    iframeHeight: 800,
    iframeURL: "http://www.jq22.com"
});

或者也可以通過jquery事件來打開模態(tài)窗口。

$(document).on('click''.trigger'function (event) {
    event.preventDefault();
    $('#modal').iziModal('open'this); // 需要帶上 "this"
});

Ajax

iziModal模態(tài)窗口插件配置有Ajax功能。

$("#modal").iziModal('open'function(modal){
      
    modal.startLoading();
  
    $.get('/path/to/file'function(data) {
        $("#modal .iziModal-content").html(data);
  
        modal.stopLoading();
    });
  
});

配置參數(shù)

iziModal模態(tài)窗口插件的默認(rèn)配置參數(shù)如下:

$("#modal").iziModal({
    title: "",
    subtitle: "",
    theme: "",
    headerColor: "#88A0B9",
    overlayColor: "rgba(0, 0, 0, 0.4)",
    iconColor: "",
    iconClass: null,
    width: 600,
    padding: 0,
    iframe: false,
    iframeHeight: 400,
    iframeURL: null,
    overlayClose: true,
    closeOnEscape: true,
    bodyOverflow: false,
    focusInput: true,
    autoOpen: false,
    transitionInModal: 'transitionIn',
    transitionOutModal: 'transitionOut',
    transitionInOverlay: 'fadeIn',
    transitionOutOverlay: 'fadeOut',
    onOpening: function() {},
    onOpened: function() {},
    onClosing: function() {},
    onClosed: function() {}
});
參數(shù)默認(rèn)值描述
title""模態(tài)窗口的標(biāo)題。
subtitle""模態(tài)窗口的子標(biāo)題。
theme""模態(tài)窗口的主題,可以是空或"light"。
headerColor#6d7d8d模態(tài)窗口的頭部顏色。
overlayColorrgba(0,0,0,0.4)遮罩層的顏色。
iconColor""頭部圖標(biāo)的顏色。
iconClassnull圖標(biāo)圖標(biāo)的class(你使用的字體圖標(biāo)的class名稱)
width600模態(tài)窗口的固定寬度。你可以使用%, px, em 或 cm。如果不帶單位,默認(rèn)為像素。
padding0模態(tài)窗口的內(nèi)邊距。
iframefalse是否在模態(tài)窗口中啟用iframe功能。
iframeHeightnulliframe的高度。
iframeURLnulliframe加載內(nèi)容的URL地址。如果沒有設(shè)置,可以使用超鏈接的地址來作為URL地址。
overlayClosetrue是否允許點擊模態(tài)窗口的外部來關(guān)閉模態(tài)窗口。
closeOnEscapetrue是否允許通過點擊ESC鍵來關(guān)閉模態(tài)窗口。
bodyOverflowfalse強制在打開模態(tài)窗口時超出文檔的內(nèi)容被隱藏。
focusInputtrue設(shè)置為true時,當(dāng)打開模態(tài)窗口時,第一個可見的表單域?qū)⒈患せ睢?/td>
autoOpenfalse是否自動打開模態(tài)窗口。
transitionInModaltransitionIn打開模態(tài)窗口的默認(rèn)過渡動畫。
transitionOutModaltransitionOut關(guān)閉模態(tài)窗口的默認(rèn)過渡動畫。
transitionInOverlayfadeIn遮罩層打開時的過渡動畫。
transitionOutOverlayfadeOut遮罩層關(guān)閉時的過渡動畫。
onOpeningfunction() {}模態(tài)窗口打開時的回調(diào)函數(shù)。
onOpenedfunction() {}模態(tài)窗口打開后的回調(diào)函數(shù)。
onClosingfunction() {}模態(tài)窗口關(guān)閉時的回調(diào)函數(shù)。
onClosedfunction() {}模態(tài)窗口關(guān)閉后的回調(diào)函數(shù)。

方法

  • $('#modal').iziModal();//初始化模態(tài)窗口。

  • $('#modal').iziModal('open');//打開模態(tài)窗口。

  • $('#modal').iziModal('close');//關(guān)閉模態(tài)窗口。

  • $('#modal').iziModal('getState');//獲取模態(tài)窗口的狀態(tài),返回:{'closed'|'closing'|'opened'|'opening'}。

  • $('#modal').iziModal('startLoading');//開啟模態(tài)窗口中的加載進(jìn)度指示器。

  • $('#modal').iziModal('stopLoading');//關(guān)閉模態(tài)窗口中的加載進(jìn)度指示器。

  • $('#modal').iziModal('destroy');//銷毀模態(tài)窗口。

  • $('#modal').iziModal('setHeaderColor', 'color');//設(shè)置模態(tài)窗口頭部的背景顏色。

  • $('#modal').iziModal('setTitle', 'Title');//設(shè)置模態(tài)窗口的標(biāo)題。

  • $('#modal').iziModal('setSubtitle', 'Subtitle');//設(shè)置模態(tài)窗口的子標(biāo)題。

  • $('#modal').iziModal('setIconClass', 'iconClass');//設(shè)置模態(tài)窗口的圖標(biāo)。

  • $('#modal').iziModal('recalculateLayout');//重新計算模態(tài)窗口的尺寸和位置。

事件

Opening:在模態(tài)窗口打開時觸發(fā)。

$(document).on('opening''#modal'function (e) {
    //console.log('Modal is opening');
});

Opened:在模態(tài)窗口打開之后觸發(fā)。

$(document).on('opened''#modal'function (e) {
    //console.log('Modal is opened');
});

Closing:在模態(tài)窗口關(guān)閉時觸發(fā)。

$(document).on('closing''#modal'function (e) {
    //console.log('Modal is closing');
});

Closed:在模態(tài)窗口關(guān)閉之后觸發(fā)。

$(document).on('closed''#modal'function (e) {
    // console.log('Modal is closed');
});


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號