W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
插件描述:SweetAlertjs的升級版本,支持嵌入圖片,背景,HTML標簽等并提供5種內(nèi)置的情景類,功能非常強大。
SweetAlert2是一款功能強大的純Js模態(tài)消息對話框插件。SweetAlert2用于替代瀏覽器默認的彈出對話框,它提供各種參數(shù)和方法,支持嵌入圖片,背景,HTML標簽等,并提供5種內(nèi)置的情景類,功能非常強大。
SweetAlert2是SweetAlert-js的升級版本,它解決了SweetAlert-js中不能嵌入HTML標簽的問題,并對彈出對話框進行了優(yōu)化,同時提供對各種表單元素的支持,還增加了5種情景模式的模態(tài)對話框。
可以通過bower或npm來安裝sweetalert2對話框插件。
bower install sweetalert2
npm install sweetalert2
使用SweetAlert2對話框需要在頁面中引入sweetalert2.min.css和sweetalert2.min.js文件,為了兼容IE瀏覽器,還需要引入promise.min.js文件。
<link rel="stylesheet" type="text/css" href="path/to/sweetalert2/dist/sweetalert2.min.css">
<script src="path/to/sweetalert2/dist/sweetalert2.min.js"></script>
<!-- for IE support -->
<script src="path/to/es6-promise/promise.min.js"></script>
最基本的使用方法是通過swal()來彈出一個對話框。
swal('Hello world!');
如果要彈出一個帶情景模式的對話框,可以在的第二個參數(shù)中設置。
swal('Oops...', 'Something went wrong!', 'error');
你可以通過下面的方法來處理對話框的用戶交互:
swal({
title: 'Are you sure?',
text: 'You will not be able to recover this imaginary file!',
type: 'warning',
showCancelButton: true,
confirmButtonText: 'Yes, delete it!',
cancelButtonText: 'No, keep it',
}).then(function(isConfirm) {
if (isConfirm === true) {
swal(
'Deleted!',
'Your imaginary file has been deleted.',
'success'
);
} else if (isConfirm === false) {
swal(
'Cancelled',
'Your imaginary file is safe :)',
'error'
);
} else {
// Esc, close button or outside click
// isConfirm is undefined
}
});
swal(...)會返回一個Promise對象,該Promise對象中then方法中的isConfirm參數(shù)的含義如下:
true:代表Confirm(確認)按鈕。
false:代表Cancel(取消)按鈕。
undefined:代表按下Esc鍵,點擊取消按鈕或在對話框之外點擊。
sweetalert2提供了5種情景模式的對話框。
參數(shù) | 默認 | 描述 |
title | null | 模態(tài)對話框的標題。它可以在參數(shù)對象的title參數(shù)中設置,也可以在swal()方法的第一個參數(shù)設置。 |
text | null | 模態(tài)對話框的內(nèi)容。它可以在參數(shù)對象的text參數(shù)中設置,也可以在swal()方法的第二個參數(shù)設置。 |
html | null | 對話框中的內(nèi)容作為HTML標簽。如果同時提供text和html參數(shù),插件將會優(yōu)先使用text參數(shù)。 |
type | null | 對話框的情景類型。有5種內(nèi)置的情景類型:warning,error,success,info和question。它可以在參數(shù)對象的type參數(shù)中設置,也可以在swal()方法的第三個參數(shù)設置。 |
customClass | null | 模態(tài)對話框的自定義class類。 |
animation | true | 如果設置為false,對話框?qū)⒉粫袆赢嬓Ч?/td> |
allowOutsideClick | true | 是否允許點擊對話框外部來關閉對話框。 |
allowEscapeKey | true | 是否允許按下Esc鍵來關閉對話框。 |
showConfirmButton | true | 是否顯示“Confirm(確認)”按鈕。 |
showCancelButton | false | 是否顯示“Cancel(取消)”按鈕。 |
confirmButtonText | "OK" | 確認按鈕上的文本。 |
cancelButtonText | "Cancel" | 取消按鈕上的文本。 |
confirmButtonColor | "#3085d6" | 確認按鈕的顏色。必須是HEX顏色值。 |
cancelButtonColor | "#ccc" | 取消按鈕的顏色。必須是HEX顏色值。 |
confirmButtonClass | null | 確認按鈕的自定義class類。 |
cancelButtonClass | null | 取消按鈕的自定義class類。 |
buttonsStyling | true | 為按鈕添加默認的swal2樣式。如果你想使用自己的按鈕樣式,可以將該參數(shù)設置為false。 |
reverseButtons | false | 如果你想反向顯示按鈕的位置,設置該參數(shù)為true。 |
showLoaderOnConfirm | false | 設置為true時,按鈕被禁用,并顯示一個在加載的進度條。該參數(shù)用于AJAX請求的情況。 |
preConfirm | null | 在確認之前執(zhí)行的函數(shù),返回一個Promise對象。 |
imageUrl | null | 為模態(tài)對話框自定義圖片。指向一幅圖片的URL地址。 |
imageWidth | null | 如果設置了imageUrl參數(shù),可以為圖片設置顯示的寬度,單位像素。 |
imageHeight | null | 如果設置了imageUrl參數(shù),可以為圖片設置顯示的高度,單位像素。 |
imageClass | null | 自定義的圖片class類。 |
timer | null | 自動關閉對話框的定時器,單位毫秒。 |
width | 500 | 模態(tài)窗口的寬度,包括padding值(box-sizing: border-box)。 |
padding | 20 | 模態(tài)窗口的padding內(nèi)邊距。 |
background | "#fff" | "#fff" 模態(tài)窗口的背景顏色。 |
input | null | 表單input域的類型,可以是"text", "email", "password", "textarea", "select", "radio", "checkbox" 和 "file"。 |
inputPlaceholder | "" | input域的占位符。 |
inputValue | "" | input域的初始值。 |
inputOptions | {} 或 Promise | 如果input的值是select或radio,你可以為它們提供選項。對象的key代表選項的值,value代表選項的文本值。 |
inputAutoTrim | true | 是否自動清除返回字符串前后兩端的空白。 |
inputValidator | null | 是否對input域進行校驗,返回Promise對象。 |
inputClass | null | 自定義input域的class類。 |
方法 | 描述 |
swal.setDefaults({Object}) | 當你在使用SweetAlert2時有大量的自定義參數(shù),可以通過swal.setDefaults({Object})方法來將它們設置為默認參數(shù)。 |
swal.resetDefaults() | 重置設置的默認值。 |
swal.queue([Array]) | 提供一個數(shù)組形式的SweetAlert2參數(shù),用于顯示多個對話框。對話框?qū)粋€接一個的出現(xiàn)。 |
swal.close()或 swal.closeModal() | 以編程的方式關閉當前打開的SweetAlert2對話框。 |
swal.enableButtons() | 確認和關閉按鈕可用。 |
swal.disableButtons() | 禁用確認和關閉按鈕。 |
swal.enableLoading()或swal.showLoading() | 禁用按鈕并顯示加載進度條。通常用于AJAX請求。 |
swal.disableLoading()或swal.hideLoading() | 隱藏進度條并使按鈕可用。 |
swal.clickConfirm() | 以編程的方式點擊確認按鈕。 |
swal.clickCancel() | 以編程的方式點擊取消按鈕。 |
swal.showValidationError(error) | 顯示表單校驗錯誤信息。 |
swal.resetValidationError() | 隱藏表單校驗錯誤信息。 |
swal.enableInput() | 使input域可用。 |
swal.disableInput() | 禁用input域。 |
SweetAlert2可以工作在所有的現(xiàn)代瀏覽器中:
IE: 10+(需要引入Promise文件)
Microsoft Edge: 12+
Safari: 4+
Firefox: 4+
Chrome 14+
Opera: 15+
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: