当引导模式已经打开时,如何使用 jquery 防止 div 刷新?



我每 30 秒刷新一次div,在我刷新的div 中有一个引导模式框。如果单击该模式并处于打开状态,则当div 刷新时,模式将消失,使整个页面不可单击。我正在努力找到解决这个问题的方法。

我希望在模态框打开时防止div 刷新。有什么想法吗? 谢谢

<div class="modal fade" id="alertModal" tabindex="-1" role="dialog" aria-labelledby="alertModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header bg-info text-white">
<h5 class="modal-title" id="alertModalLabel">Modal Title</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
</div>
<div class="modal-body">
some content
</div>
</div>
</div>
</div>
$(document).ready(function() {
setInterval(function() {
$('#mainc').fadeOut('slow').load('index.php #mainc').fadeIn('slow');
}, 30000);
});

这是这个问题的一个工作解决方案:

function setLoad() {$('#mainc').fadeOut('slow').load('index.php #mainc').fadeIn('slow');}
setInterval(setLoad,'10000');
$(document).on('hidden.bs.modal','.modal',function(){setInterval(setLoad,'10000');});
$(document).on('shown.bs.modal','.modal',function(){for(var i=1;i<10000;i++){clearInterval(i);}});

由于 hidden.bs.modal 使用随机 id 运行 setInterval((,因此在不知道 id 的情况下无法使用 clearInterval((。 另外,请务必将js代码放在".modal"div上方,这样效果更好。

最新更新