Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为.css状态的更改添加延迟_Javascript_Jquery - Fatal编程技术网

Javascript 如何为.css状态的更改添加延迟

Javascript 如何为.css状态的更改添加延迟,javascript,jquery,Javascript,Jquery,我有以下资料: $(document) .ajaxStart(function () { $(this).css({ 'cursor': 'progress !important' }) }) .ajaxStop(function () { $(this).css({ 'cursor': 'default !important' }) }); 是否有一种方法可以将光标进度状态延长2秒。现在它来去太快了。换句话说,我希望光标至少

我有以下资料:

  $(document)
    .ajaxStart(function () {
        $(this).css({ 'cursor': 'progress !important' })
    })
    .ajaxStop(function () {
        $(this).css({ 'cursor': 'default !important' })
    });
是否有一种方法可以将光标进度状态延长2秒。现在它来去太快了。换句话说,我希望光标至少在几秒钟内变为“progress”

编辑:

尝试使用
window.setTimeout

  var timer = null;

  $(document)
    .ajaxStart(function () {
        if (timer) {
            clearTimeout(timer);
        }
        $(this).css({ 'cursor': 'progress !important' });
    })
    .ajaxStop(function () {
        timer = setTimeout(function() {
           $(this).css({ 'cursor': 'default !important' });
        }, 2000);

    });
编辑:

尝试使用
window.setTimeout

  var timer = null;

  $(document)
    .ajaxStart(function () {
        if (timer) {
            clearTimeout(timer);
        }
        $(this).css({ 'cursor': 'progress !important' });
    })
    .ajaxStop(function () {
        timer = setTimeout(function() {
           $(this).css({ 'cursor': 'default !important' });
        }, 2000);

    });
像这样试试

$(this).delay('1000').css({ 'cursor': 'progress !important' });
像这样试试

$(this).delay('1000').css({ 'cursor': 'progress !important' });
试试这个

$.delay(1000, function(){
//Do anything after 1 second
});
试试这个

$.delay(1000, function(){
//Do anything after 1 second
});
可以使用setTimeout()

setTimeout(“javascript函数”,毫秒)

在“javascript函数”中执行您想要的操作,将毫秒替换为您想要等待的时间。

您可以使用setTimeout()

setTimeout(“javascript函数”,毫秒)



在“javascript函数”中执行您想执行的操作,将毫秒替换为您想等待的时间。

这行不通。延迟对css功能没有影响。请参见编辑。它现在可以工作了(对我来说也是)你真的试过了吗?医生说它不起作用,我只是试了一下,医生说是正确的:它不起作用。但在小提琴中我试了一下,我发现这不是延迟的结果,我在小提琴中使用了fadeIn(),当我把它取下时,我不应该工作,谢谢Ariel,我学到了不起作用的新东西。延迟对css功能没有影响。请参见编辑。它现在可以工作了(对我来说也是)你真的试过了吗?医生说它不起作用,我只是试了一下,医生说是正确的:它不起作用。但在小提琴中我试了一下,我发现这不是延迟的结果,我在小提琴中使用了fadeIn(),当我把它取下时,我不应该工作,谢谢Ariel,我学到了不起作用的新东西。延迟对css功能没有影响。有人能提供一把小提琴来检查它吗。我也有点怀疑
延迟
。然而,一切都有可能发生。@Ariel你是对的,更新了我的答案。@xdazz-你做到了吗。我尝试了你的代码,但仍然没有看到光标改变。Dose
$(document).css({'cursor':'progress!important'})更改光标?如果没有,那就是问题所在。那是行不通的。延迟对css功能没有影响。有人能提供一把小提琴来检查它吗。我也有点怀疑
延迟
。然而,一切都有可能发生。@Ariel你是对的,更新了我的答案。@xdazz-你做到了吗。我尝试了你的代码,但仍然没有看到光标改变。Dose
$(document).css({'cursor':'progress!important'})更改光标?如果没有,那就是问题所在。如果要这样做,您最好使用
setTimeout()
,除非您特别需要与jQuery效果队列交互。如果要这样做,您最好使用
setTimeout()
,除非您特别需要与jQuery效果队列交互。