jQuery Dialog是一種非常實用的工具,但是當彈出窗口內容尺寸不同時,在屏幕上的位置就可能會出現偏差。在這種情況下,我們需要使用某些技巧,將對話框居中,確保最佳用戶體驗。下面,我們將介紹如何使用jQuery Dialog實現對話框居中顯示。
$(document).ready(function(){ $("#dialog").dialog({ autoOpen: false, modal: true, show: { effect: "blind", duration: 1000 }, hide: { effect: "explode", duration: 1000 }, //將對話框居中 open: function(event, ui) { $(this).parent().css('position', 'fixed'); $(this).parent().css('top', '50%'); $(this).parent().css('left', '50%'); $(this).parent().css('margin-top', -($(this).height()/2) + "px"); $(this).parent().css('margin-left', -($(this).width()/2) + "px"); } }); $("#opener").click(function(){ //打開對話框 $("#dialog").dialog("open"); }); });
上面的代碼段中,我們將對話框居中的代碼加入了對話框打開的事件。首先,我們通過CSS將對話框的位置設置為fixed,這樣可以保持對話框在視口中的位置。然后,我們將對話框的top和left設置為50%,這將把對話框的左上角放置在視口的中心。接下來,我們使用margin-top和margin-left將對話框向上和向左移動對話框高度和寬度的一半,以確保對話框完全居中。
當我們點擊打開按鈕時,對話框就會顯示在屏幕中央,不論對話框的大小如何,都能夠獲得最佳的用戶體驗。