我需要在用戶空閒時進行呼叫,並將會話超時並關閉所有Bootstrap模式。活躍的模式取決於用戶在當時正在做什麼,所以我想要做的事情都包含在內。如何在會話超時時關閉所有活動的引導模式?
我想:
$('.modal').modal('toggle');
當出現超時,但我的情態仍然存在。
我需要在用戶空閒時進行呼叫,並將會話超時並關閉所有Bootstrap模式。活躍的模式取決於用戶在當時正在做什麼,所以我想要做的事情都包含在內。如何在會話超時時關閉所有活動的引導模式?
我想:
$('.modal').modal('toggle');
當出現超時,但我的情態仍然存在。
使用下面的代碼:
$('.modal').modal('hide');
此外,如果你想要做的東西,如果進行模態隱藏,那麼你可以這樣做:
$('.modal').on('hidden', function() {
// write your code
});
試試這個方法: $('.modal.in:visible').modal('hide');
正確的答案是缺少一些重要的東西。
$('.modal').modal('hide') // closes all active pop ups.
$('.modal-backdrop').remove() // removes the grey overlay.
如果您希望用戶正常使用頁面,第二行是至關重要的。
這就是我如何在不使用任何工廠或附加代碼的情況下在我的項目中工作的方式。
//hide any open bootstrap modals
angular.element('.inmodal').hide();
我發出註銷如$rootScope.$emit('logout');
和我的服務聽者如下超時功能:
$rootScope.$on('logout', function() {
//hide any open bootstrap modals
angular.element('.inmodal').hide();
//do something else here
});
如果你想隱藏任何其他情態動詞,如角材料對話框($mdDialog
) &甜蜜的警告對話框的使用angular.element('.modal-dialog').hide();
& angular.element('.sweet-alert').hide();
我不知道這是正確的做法,但它爲我工作。
..因爲使用'toggle'會顯示你隱藏的模態並隱藏你顯示的模態。 – Robadob
但是正如他所提到的,如果某些模態是開放的而另一些模態是接近的,那麼它可能會導致一些問題。所以最好使用更安全的代碼。 –
我正在說明你的答案的原因,因爲我同意並且你沒有包括原因。 – Robadob