我試圖創建一個彈出div,當我的應用程序正在完成一項任務時出現。當ajax任務完成時,我想刪除彈出窗口。 我一直在評論http://jqueryui.com/demos/dialog/#modal,並試圖實施類似的解決方案。但我無法讓我的div彈出。這裏是我的代碼來創建DIV:在頁面上後jquery模式對話不會彈出
<div id="progress-indicator">
<img src="<?php echo base_url();?>assets/img/wip.gif" /> Please Wait...
</div>
然後,我有一些JavaScript來隱藏DIV,直到有人點擊一個按鈕:
$(document).ready(function(){
$('#progress-indicator').hide();
});
$('#saveData').live('click', function() {
//$('#progress-indicator').show();
$("#progress-indicator").dialog({
height: 140,
modal: true
});
});
不幸的是,沒有得到點擊保存按鈕時彈出。如果你能告訴我我哪裏出了問題,我會很感激。
謝謝!
編輯:
我知道按鈕點擊事件被激發,因爲在試圖創建一個彈出div之前,我有一行只是使現有頁面內的div可見。那是有效的。因此,例如,下面的代碼工作:
$(document).ready(function(){
$('#progress-indicator').hide();
});
$('#save').live('click', function() {
$('#progress-indicator').show();
});
此代碼工作正常,除了事實上,我希望有一個彈出多數民衆贊成在頁面上居中。
編輯2: 順便說一句,我還檢查了Firefox的Web開發者控制檯,並且沒有生成錯誤消息。萬一幫助... 此外,我既包括jQuery和jQuery的用戶界面:
<script src="assets/js/jquery-1.8.1.min.js" charset="utf-8"></script>
<script src="assets/js/jquery-ui-1.8.23.custom.min.js"></script>
您能否確認回調火災?我認爲.live()現在已被棄用。你有沒有試過.on()? – d4rklit3
'.live()'在jQuery 1.7+中被棄用。最好使用'.on()'。 http://api.jquery.com/on/ – honyovk
1.是的,你需要隱藏div,否則當它加載時它只會坐在你的頁面上。但我會用CSS,而不是在文檔準備好的JavaScript。如果你準備好文檔,你可能會在隱藏之前短暫地看到div。 – jfrank