SweetAlert-優化彈出提醒框的JS插件

當我們需要在網頁上彈出提醒框時,常規的alert()方法並不能給人很好的使用體驗,SweetAlert是一個讓彈出提醒框變得更加優化的JS插件,可以讓我們自定義彈出框的樣式、動畫效果,甚至可以添加按鈕,直接響應用戶的操作。

一、SweetAlert2

SweetAlert2是SweetAlert的第二代版本,它重構了SweetAlert,在強化了原有功能的基礎上,拓展了很多新功能。使用sweetalert2.css、sweetalert2.min.js兩個文件即可輕鬆使用,SweetAlert2支持Promise,可以更好地支持非同步操作,而且在Webpack等工具中能夠打包,易於使用。

二、SweetAlert使用說明

使用SweetAlert非常簡單,只需在需要調用的地方使用以下代碼:

<script src="sweetalert.min.js"></script>
<link rel="stylesheet" type="text/css" href="sweetalert.css">
<script>
    swal("提示信息","操作成功!","success");
</script>

其中sweetalert.min.js為SweetAlert的JS文件,sweetalert.css是樣式文件,以上代碼可以在網頁被載入時就執行,彈出一個簡單的提示框,提示框會在2s後自動消失。

三、SweetAlert官網

SweetAlert的官網提供了很多有關SweetAlert的介紹和用法,大家可以在官網學習到SweetAlert的所有功能及API,官網的鏈接如下:

https://sweetalert2.github.io/

四、SweetAlert讀音

SweetAlert這個名字是由「Sweet」和「Alert」組成的,Sweet的意思是「甜美」的,而Alert的意思是「警告」,所以SweetAlert的中文意思就是「甜美警告」,讀音類似英文單詞中的「sweet」和「alert」。

五、SweetAlert2教程

在SweetAlert2教程中,我們會學習SweetAlert2的使用方法,能夠自定義彈出框的樣式、位置、動畫效果和按鈕等基本的功能,SweetAlert2的API也會有所介紹。

首先,我們需要在網頁中引用sweetalert2.min.js和sweetalert2.min.css文件,接著就可以在JS代碼中調用SweetAlert2插件了,例如:

swal({
  title: "您確定嗎?",
  text: "確定後,訂單將完成並不可更改!",
  icon: "warning",
  buttons: true,
  dangerMode: true,
})
.then((willDelete) => {
  if (willDelete) {
    swal("訂單已完成!", {
      icon: "success",
    });
  } else {
    swal("訂單取消!");
  }
});

以上代碼可以彈出一個包含警告圖標的提示框,裡面有帶有確認和取消兩個按鈕,用戶操作後會有相應的響應。

六、SweetAlert視頻教程

SweetAlert也有很多視頻教程可以供我們學習,通過視頻教程能夠更好地了解SweetAlert的使用方法和原理,Youtube上有很多這樣的SweetAlert視頻教程。

七、SweetAlert2新版教程

SweetAlert2的新版教程可以讓我們快速掌握SweetAlert2的API使用方法,通過實例幫助我們更好地理解。

例如:

Swal.fire({
  title: '賬號登錄',
  html:
    '<input id="swal-input1" class="swal2-input" placeholder="輸入用戶名">' +
    '<input id="swal-input2" class="swal2-input" placeholder="輸入密碼">',
  focusConfirm: false,
  preConfirm: () => {
    const username = Swal.getPopup().querySelector('#swal-input1').value
    const password = Swal.getPopup().querySelector('#swal-input2').value
    if (!username || !password) {
      Swal.showValidationMessage(`請輸入用戶名和密碼`)
    }
    return { username: username, password: password }
  }
}).then((result) => {
  if (result.value) {
    Swal.fire({
      title: `Welcome ${result.value.username}!`,
      text: `密碼已確認:${result.value.password}`
    })
  }
})

以上代碼可以在SweetAlert2中創建一個提示框,彈出提示框需要用戶輸入用戶名和密碼,並在確認後輸出相應信息。

八、SweetAlert插件怎麼用

使用SweetAlert插件需要我們在網頁中引入sweetalert.min.js和sweetalert.css文件,SweetAlert只能應用在擁有HTML5框架的應用中。

示例:

<script src="sweetalert.min.js"></script>
<link rel="stylesheet" type="text/css" href="sweetalert.css">
<script>
    document.querySelector('#btn').onclick = function(){
        swal({
            title: "提示信息",
            text: "請先登錄再進行操作。",
            type: "warning",
            showCancelButton: true, 
            confirmButtonColor: "#DD6B55",
            confirmButtonText: "去登錄",
            cancelButtonText: "我再看看",
            closeOnConfirm: false 
        },
        function(){
            window.location.href = "login.html";    
        });
    };
</script>

以上代碼實現了一個綁定了一個按鈕的SweetAlert插件,當用戶點擊按鈕後,會彈出一個警告框,提示用戶需要先登錄才能進行操作,用戶可以選擇確認去登錄,否則關閉提示框,仍滯留在當前頁面。

九、SweetAlert2定義多個按鈕

SweetAlert2也支持定義多個按鈕,我們可以在options參數中添加buttons數組,定義多個按鈕的類型和文本內容,例如:

Swal.fire({
  title: '要開始倒計時嗎?',
  width: 600,
  padding:'3em',
  background: '#fff url(/images/trees.png)',
  backdrop: `
    rgba(0,0,123,0.4)
    url("/images/nyan-cat.gif")
    left top
    no-repeat
  `,
  timerProgressBar: true,
  timer: 5000,
  showCancelButton: true,
  cancelButtonColor: '#6D6D6D',
  cancelButtonText: '取消',
  buttons: [
      '開始',
      '先休息一下'
  ]
}).then((result) => {
        if (result.isConfirmed) {
          Swal.fire({
            title: `開始!`,
            text: `倒計時開始!`,
            timer: 5000,
            timerProgressBar: true,
            icon: 'success',
            background:'#fff',
            
          })
        } else if (result.dismiss === Swal.DismissReason.cancel) {
          Swal.fire({
            title: '休息一下!',
            icon: 'error',
            background:'red',
          })
        }
      })

以上代碼定義了兩個按鈕:「開始」和「先休息一下」,當用戶點擊開始按鈕時,倒計時開始;當用戶點擊休息按鈕時,會彈出一個錯誤提示框,告知用戶先休息一下。

總結

通過本篇文章的講解,我們對SweetAlert插件的使用有了一定的了解。SweetAlert可以讓我們創建更加優美的提醒框,可以讓我們自由地定義樣式、添加按鈕等操作,可以帶給用戶更好的使用體驗。同時,SweetAlert還有很多的拓展和API,使用起來非常方便。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/197550.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-03 20:04
下一篇 2024-12-03 20:04

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字元無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字元無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • Codemaid插件——讓你的代碼優美整潔

    你是否曾為了混雜在代碼里的冗餘空格、重複代碼而感到煩惱?你是否曾因為代碼缺少注釋而陷入困境?為了解決這些問題,今天我要為大家推薦一款Visual Studio擴展插件——Codem…

    編程 2025-04-28
  • Kong 使用第三方的go插件

    本文將針對Kong使用第三方的go插件進行詳細闡述。首先,我們解答下標題的問題:如何使用第三方的go插件?我們可以通過編寫插件來達到此目的。 一、插件架構介紹 Kong的插件系統采…

    編程 2025-04-28
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • JS圖片沿著SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿著SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • 如何使用JS調用Python腳本

    本文將詳細介紹通過JS調用Python腳本的方法,包括使用Node.js、Python shell、child_process等三種方法,以及在Web應用中的應用。 一、使用Nod…

    編程 2025-04-27
  • 按鍵精靈Python插件使用指南

    本篇文章將從安裝、基礎語法使用、實戰案例以及常用問題四個方面介紹按鍵精靈Python插件的使用方法。 一、安裝 安裝按鍵精靈Python插件非常簡單,只需在cmd命令行中輸入以下代…

    編程 2025-04-27
  • 如何反混淆美團slider.js

    本文將從多個方面詳細闡述如何反混淆美團slider.js。在開始之前,需要明確的是,混淆是一種保護JavaScript代碼的方法,其目的是使代碼難以理解和修改。因此,在進行反混淆操…

    編程 2025-04-27

發表回復

登錄後才能評論