jquery - 如何让 jQuery 多个 addClass 按我喜欢的顺序工作?

标签 jquery css jquery-ui

$(document).ready(function() {
    $('.tlist td div').click(function () {
        $(this).addClass('first').addClass('second').addClass('third');                 
    });
});

我想先执行 addClass('first'),然后执行 addClass('second'),最后执行 addClass('third'),但它们总是同时触发,我该怎么办?

最佳答案

您可以使用 setTimeout 来确保仅在前一个类在 DOM 中呈现后才添加下一个类。但它确实看起来有点丑陋。当然,您可以根据需要微调延迟。这是它的样子:

$(document).ready(function() {
  $('#someDiv').click(function() {

    $(this).addClass('first');
    
     setTimeout(function(element) {
        element.addClass('second');
        
        setTimeout(function() {
          element.addClass('third');
        },1, $(this));
     },1, $(this));
  });
});
.first:after {
  content: 'First';
}

.second:after {
  content: 'Second';
}


.third:after {
  content: 'Third';
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="someDiv">
 Click me!
</div>

关于jquery - 如何让 jQuery 多个 addClass 按我喜欢的顺序工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45852007/

相关文章:

javascript - 尝试学习jQuery插件开发

jquery - TypeError : $(. ..).owlCarousel 不是函数

python - 如何用美汤获取within::before和::after的内容?

css - jQuery UI 选项卡,ID 属性

jquery - 当内容展开时,在 jQuery 动画期间展开 iframe

asp.net - ASP.NET 按钮 OnClientClick 中的 jQuery 确认对话框

javascript - 打开页面就像点击导航元素一样?

javascript - 使用javascript中的onclick函数动态添加行

html - 等效于内联图像的背景位置

jquery - Iphone/Ipad like,图标抖动效果jquery/CSS3