如何使用JQuery重复更改颜色?

de *_* do 1 javascript jquery

我认为这应该有效:

$("#manual").css("color","red").fadeIn(400).fadeOut(150).fadeIn(150).fadeOut(150).fadeIn(150).css("color","black");
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div id="manual">
      some text here
    </div>
Run Code Online (Sandbox Code Playgroud)

我希望它是红色然后是黑色,但它没有这样做,为什么?

Ror*_*san 5

如果"不起作用",则表示文本立即变为黑色,这是因为css()不像函数那样在fx队列上fadeX()运行.要解决此问题,请更改上次fade调用的回调中的文本颜色:

$("#manual").css("color", "red").fadeIn(400)
  .fadeOut(150).fadeIn(150)
  .fadeOut(150).fadeIn(150, function() {
    $(this).css("color", "black");
  })
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="manual">
  some text here
</div>
Run Code Online (Sandbox Code Playgroud)