jquery延迟改变css

Tom*_*Tom 1 javascript css jquery delay

我试图重置一些CSS,但点击后有一个延迟.出于某种原因,延迟似乎被忽略了.有任何想法吗?

$("#closeMe").live("click", function() {
    $("#selectContainer").fadeOut( function() {
        scrollerPos = 1
        $(".scroller").delay(3000).css({"margin-left":"0px"});
        $("#selectContainer img").delay(3000).css({"background-color":"#FFF"});
        $("#selectContainer img:eq(0)").delay(3000).css({"background-color":"#000"});
    });
});
Run Code Online (Sandbox Code Playgroud)

T.J*_*der 8

我不相信css参与效果的东西,所以它不会知道队列.来自delay文档:

只有队列中的后续事件才会延迟; 例如,这不会延迟无参数形式.show().hide()不使用效果队列.

非常肯定css也在该列表上.

不过没问题; 你可以这样做:

$("#closeMe").live("click", function() {
    $("#selectContainer").fadeOut( function() {
        scrollerPos = 1
        setTimeout(function() {
            $(".scroller").css({"margin-left":"0px"});
            $("#selectContainer img")..css({"background-color":"#FFF"});
            $("#selectContainer img:eq(0)").css({"background-color":"#000"});
        }, 3000);
    });
});
Run Code Online (Sandbox Code Playgroud)