2012-01-04 63 views
1

我只是对如何做到这一点的答案:如何使用jQuery更改光标?

CSS

body.ajaxloading {  cursor:wait; } 

jQuery的

function enableLoadingIcon() {  
    $(body).addClass('ajaxloading'); 
} 
function disableLoadingIcon() {  
    $(body).addClass('ajaxloading'); 
} 

然而,当我尝试实施它似乎并没有工作。任何人都可以看到原因是什么?

回答

0

或者,你就不必申报在你的CSS类,如果你只是手动注入使用jQuery的CSS如下:

function enableLoadingIcon() {  
    $(document.body).css ("cursor", "wait"); 
} 
function disableLoadingIcon() {  
    $(document.body).css("cursor", "auto"); 
} 
+0

您也可以将光标移回“default”而不是“auto”。据我所知,“自动”允许浏览器选择默认设置,并且“默认”将光标设置回系统默认值。通常他们会等同于相同的东西。 – alexdlaird 2012-01-04 16:36:07

3

$(body)是错误的。它实际上是$("body")

function enableLoadingIcon() {  
    $('body').addClass('ajaxloading'); 
} 
function disableLoadingIcon() {  
    $('body').removeClass('ajaxloading'); 
} 

,或者甚至更快,$(document.body)

function enableLoadingIcon() {  
    $(document.body).addClass('ajaxloading'); 
} 
function disableLoadingIcon() {  
    $(document.body).removeClass('ajaxloading'); 
} 
+1

'$(doc ument.body)'更快。 DOM穿越vs'getElementsByTagName()' – 2012-01-04 16:06:07

+0

@ans谢谢,添加 – 2012-01-04 16:07:49

+0

@Martin - 刚注意到。我认为它也应该是removeClass。那是对的吗? – 2012-01-04 16:14:30