2013-08-16 113 views
3

我想這是Bootstrap本身的錯誤,因爲即使在演示頁面中我也遇到過這個問題。如果打開模式窗口,內置關閉按鈕將首次運行,但如果關閉模式並重新打開模式窗口,則關閉(和X)按鈕不會關閉模式,因此您必須單擊外部的框關閉它。你可以看到這個引導程序演示頁:Bootstrap 3模式不會在第一次打開後關閉

http://getbootstrap.com/javascript/#modals

(向下滾動到「現場演示」,然後單擊「啓動演示模式」,一旦關閉模式窗口,重新打開它,並「密切。 「按鈕將不再工作,直到頁面刷新。)

有沒有人找到解決方案,以便每次打開模式時關閉按鈕的作品?

回答

3

在引導這個錯誤似乎是一個熱門話題: https://github.com/twbs/bootstrap/issues/9362

我將更新我的引導,看看有沒有做它...

+1

Ahah!希望這將很快得到解決。我只是遵循了該頁面上的評論意見,並從bootstrap(.min).js中刪除了'.off('click.dismiss.modal')',並且做到了這一點! – Zak

+0

有沒有辦法解決這個問題,而不是黑客引導?我能以某種方式再次綁定他們已刪除的內容嗎?我寧願繼續使用CDN並等待他們解決問題? –

0

刪除.off(「click.dismiss。 modal')在bootstrap.min.js爲我做了詭計。如果您使用的是CDN,則需要下載並相應地更改參考。

1

如果您喜歡我不想修改引導程序文件,您可以改爲執行以下操作。

jQuery('[data-dismiss="modal"]').on('click', function(){ 
    jQuery('.modal').hide(); 
    jQuery('.modal-backdrop').hide(); 
}); 

在.modal('show');請致電

1

這對Bootstrap 3來說仍然是一個問題。發生是因爲我動態地填充目標模態。認爲這可能會有助於任何人嘗試做類似的事情!

我只好:

  • 添加類的關閉按鈕
  • 使用該類用作觸發:
  • 隱藏modal;dynamic content;並刪除.modal-backdrop

    $(document).on('click', '#modal .closeModal', function(){ 
        $('#modal').modal('hide'); // hide the modal 
        $('#modal-dynamic-content').empty(); // empties dynamic content 
        $('.modal-backdrop').remove(); // removes all modal-backdrops 
    }); 
    

注意:這會清空你的模態,所以只有在觸發負載進入所述模態時才使用空模型

相關問題