我想設置一個jQuery對話框的覆蓋圖像,並且似乎無法管理任務。設置對話框覆蓋Jquery
我有其他的頁面上的對話框,我想沒有背景圖像,所以設置疊加背景的CSS不會作爲一攬子解決方案。
我已經嘗試了很多不同的方法,並且我認爲應用jQuery命令設置疊加層使用css和實際對話框div和css被添加到DOM中存在計時問題。
這是我到目前爲止嘗試過的。
$('#submitUpload').click(function(){
$("#uploadStart").dialog('open');
$(".ui-widget-overlay").css({'background-image': 'url("http://www.mydomain.com/images/ftp-page-bg.gif")','opacity':'1'})
$("#uploadForm").submit();
});
OR
$("#uploadStart").dialog({
autoOpen: false,
width: 400,
modal: true,
closeOnEscape: false,
draggable: false,
resizable: false,
open: function(event, ui) {
$(".ui-dialog-titlebar-close").hide();
$(".ui-widget-overlay").css({'background-image': 'url("http://www.mydomain.com/images/ftp-page-bg.gif")','opacity':'1'})
}
});
我還使用上沒有成功的對話框代碼dialogClass方法嘗試。
使用絕對網址和相對值,以及使用引號或無引號的網址。
圖像存在於目錄中。
任何人有任何想法如何讓jQuery適用於正確的時間顯示圖像作爲覆蓋?
謝謝!
更新
對話框類指定將允許您設置類的全部測試對話框。我實際上只是想挖掘特定的ui-widget-overlay類並在那裏覆蓋背景圖像。我發現試圖使用dialogClass覆蓋背景工作覆蓋對話框的背景,而不是覆蓋背景。
當對話框被添加到DOM時,jQuery在body標籤前加載它的div。
我找到了解決辦法,是在該對話框打開的方法,我用
$(".ui-widget-overlay").addClass('artFTP');
添加類
.artFTP{background-image: url(../../images/ftp-page-bg.gif); opacity:1;}
,並確保它是最後一個類文件中那會覆蓋疊加的背景圖像。
我希望這可以幫助別人。
感謝和jjross +1,你的回答讓我跳回到jQuery文檔。
如果有人有更好的解決方案,請發佈。我很樂意看到它。我認爲可能有一種使用CSS來完成任務的方式,但是(對我來說)無法解決這個問題。
感謝偉大的解釋,可能的答案,但沒有上述工作。我找到了解決方案並更新了問題。謝謝! – 2011-01-12 13:22:04