溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用HTML5中dialog來實現模擬彈窗的方法

發布時間:2020-09-25 11:56:09 來源:億速云 閱讀:340 作者:小新 欄目:web開發

這篇文章給大家分享的是有關使用HTML5中dialog來實現模擬彈窗的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

HTML5 dialog標簽的定義和用法:

<dialog> 標簽定義對話,比如交談。

這有實例:

<dialog>
  <dt>老師</dt>
  <dd>1+1 等于?</dd>
  <dt>學生</dt>
  <dd>2</dd>
  <dt>老師</dt>
  <dd>答對了!</dd>
</dialog>

提示和注釋:

提示:對話中的每個句子都必須屬于 <dt> 標簽所定義的部分。請看下面的例子。

標簽定義及使用說明:

<dialog> 標簽定義一個對話框、確認框或窗口。

這是實例:

<table border="1">
<tr>
  <th>January <dialog open>This is an open dialog window</dialog></th>
  <th>February</th>
  <th>March</th>
</tr>
<tr>
  <td>31</td>
  <td>28</td>
  <td>31</td>
</tr>
</table>

HTML5 dialog標簽屬性:

open :open規定 dialog 元素是有效的,用戶可以與它進行交互。

近期,網頁上的的許多流程都需要用戶完全同意才可以完成。例如,用戶可能需要刪除帳戶,更改他們的用戶名,或確認貨幣交易。

這種情況下,常用的用戶體驗(UX,User experience design)是顯示一個具有兩個按鈕的對話框。一個是取消,一個是繼續。這么多年,我們一直依靠JavaScript庫實現此效果,但在本篇文章中,我們要用<dialog>元素實現此效果。

使用dialog元素:

<dialog>是一個HTML5(精確來說是5.1)元素。它歸類為“切片根”,類似<body>,<blockquote>,和<details>元素,其中每個都會建立一個新的獨立的內容區域,你可以把它作為body的一個孩子,或者是嵌套的元素,如<div>或<section>——兩種元素都有效,如下所示。

<body>
      <div> 
            <dialog></dialog>
      </div> 
      <section> 
            <dialog></dialog> 
      </section>
            <dialog></dialog>
</body>

默認情況下,支持的瀏覽器(Chrome 37+和Opera 27+)會以隱藏的形式呈現<dialog>元素,只有調用JavaScript的show()或showModal()方法才可以顯現,調用close()方法再次將其隱藏。通常情況下,我們會在一個click事件上執行此方法,如下所示:

var $accountDelete = $('#delete-account'), 
      $accountDeleteDialog = $('#confirm-delete'); 
  $accountDelete.on('click', function() { 
      $accountDeleteDialog[0].showModal(); 
  }); 
  $('#cancel').on('click', function() {
      $accountDeleteDialog[0].close(); 
  });

自定義樣式:

像大多數其他的元素一樣,對話框可以很容易覆蓋瀏覽器的默認樣式。所以,你可以自定義其樣式。例如,使對話框邊框更薄,使邊角圓潤,并添加陰影效果等。

此外,當<dialog>元素以模態顯示時(使用ShowModal()方法),我們會添加一個額外的偽元素::backdrop。::backdrop元素會立即駐留在對話框下面,覆蓋整個視區和下方的其它元素。

瀏覽器支持:

目前,只有 Chrome 和 Safari 6 支持 <dialog> 標簽。

感謝各位的閱讀!關于使用HTML5中dialog來實現模擬彈窗的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女