首页 > 解决方案 > 在 Bootstrap 4 中替换loaded.bs.modal

问题描述

为什么loaded.bs.modal从 Bootstrap 4 中删除了该事件?有什么可以代替的吗?shown.bs.modal非常相似,但它不会等待模式完全加载,只会显示。

标签: javascriptcsstwitter-bootstrapbootstrap-4bootstrap-modal

解决方案


基本上你必须手动打开模式并自己实现 Ajax 加载。就像是:

 $modal.modal({
    'show': true
   }).load('request_url', function (e) {
     // this is executed when the content has loaded.
 });

另一种选择是在模态正文中添加一个隐藏对象作为最后一个,并检查它是否出现在 DOM 中。

作为另一种解决方案,您可以向 show.bs 或 shown.bs 添加超时(差别很大)

$('#myModal').on('shown.bs.modal', function (e) {
   setTimeout(function(){
       //Do something if necessary
   }, 300);   //add what is appropriate                     
})

哪种解决方案最好取决于您的用例。


推荐阅读