2011-04-19 28 views
7

我有下面的代碼來改變光標當超級鏈接被點擊如何改變光標拖欠裝載

 $('a').click(function() { 
      $('*').css("cursor", "progress"); 
     }); 

當用戶點擊一個鏈接時,光標變成「進步」(即等待光標)完全如預期。但是,問題在於在加載新頁面後光標仍處於「進度」狀態。只有在鼠標移動後纔會更改爲默認值。這與another question有關。其他人表達了同樣的問題。

正如標題所述,我希望在加載頁面時將光標更改爲默認值。

+1

你可以更精確的,當你點擊發生了什麼在那個環節?無論如何,你修改光標的方式應該是:$('body').css(「cursor」,「progress」) – BiAiB 2011-04-19 14:24:44

+0

對不起。我剛剛添加了下面的句子:「當點擊一個鏈接時,光標變成」進度「(即等待光標)完全按照預期」。在發佈問題之前,我嘗試了使用$('body').css(「cursor」,「progress」)。在發佈問題之前,我也嘗試了$(this).css(「cursor」,「progress」)。它們都表現相同 - 光標保持「進度」,直到鼠標移動。 – Hong 2011-04-19 15:30:47

+0

這不是我的意思。我們需要知道的是什麼時候你想讓你的光標停止進度動畫。 – BiAiB 2011-04-19 16:29:01

回答

7

你沒有清楚地說明它是如何意味着要使用,但這裏是如何執行你的Ajax調用描述的行爲的一個例子:

$('a').click(function() { 
    $('body').css('cursor', 'progress'); 
    $.ajax({ 
     url: "test.html", 
     context: document.body, 
     complete: function(){ 
     $('body').css('cursor', 'default'); 
     } 
    }); 
}); 
+0

再次感謝您關注此事。我的意思是在單擊鏈接後加載新頁面時將光標反轉爲默認值。鏈接可能類似​​於以下內容Foo Hong 2011-04-19 16:46:37

+0

如果將新頁面加載到窗口中,則光標將在卸載時恢復爲其默認值,同樣,我認爲您的意思是使用特定目標:Foo。然後,你必須訪問該窗口的文檔對象,並聽取它的準備是這樣的:$(popupWindow).ready(unsetcursorfunction) – BiAiB 2011-04-19 16:51:22

+0

但我建議你放棄這個想法,我認爲瀏覽器時下足夠明確,足以通知用戶正在加載一個頁面:) – BiAiB 2011-04-19 16:52:46