我正在使用jQuery 1.6.2,我必須禁用頁面上的所有元素,包括表單,選擇和鏈接,同時顯示請等待動畫。如何在使用jQuery重新加載頁面期間繼續顯示請稍候頁面?
我發現了一個免費的動畫在Ajaxload並使用$('.gif').show();
來顯示它,等到一些javascript功能完整,然後調用$('.gif').hide();
不過,我遇到了一些我沒想到。當用戶在下拉列表中選擇一個新項目時,加載gif動畫顯示,但不久之後,在與下拉菜單相關聯的嵌套javascript函數中,它會調用頁面刷新以及來自數據庫調用的新數據並刪除我的動畫,然後才能調用隱藏功能。
所以我的問題是,是否有可能顯示一個動畫,將顯示在jsp中,然後繼續,直到重新加載完成?
我用的是這樣的事情以禁用鏈接點擊事件:
$("a").click(function(event) {
// add some conditional logic here if animation is running then
event.preventDefault(); ...
那麼,有沒有更好的方式來在全球範圍禁用頁面上的所有元素,防止點擊事件或更改事件選擇下拉菜單?
後果:
我用弓箭手的背景格的建議,從潔的回答,這個博客文章一起:jQuery page loading delay,本文就使用modal window with an animation並用定製的解決方案想出了這正好符合我所需要的。
感謝大家的幫助,非常感謝!
我發現的最簡單的方法是用div覆蓋頁面,所以你不能在它下面使用任何東西。你會考慮加載動畫的模態對話框嗎?有很多(jQueryUI非常簡單易用)。 – Archer 2013-02-14 17:47:30
我首先查看了模式對話框,之前我已經使用過其他jQuery UI小部件,因此我會檢查一下。謝謝! – 2013-02-14 18:30:08