我如何在jquery中订购事件

时间:2015-08-08 16:21:54

标签: jquery html dom

我的样本



$('#cool').hover(function() {
  $(this).css({
    "background-color": "red"
  });
  $('#fool').css({
    "background-color": "green"
  });
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<html>

<body>
  <div id=fool>
    <div id=cool>
    </div>
  </div>
</body>
</html>
&#13;
&#13;
&#13;

代码如下:

问题是我在傻瓜事件之后执行酷事件的内容。在给定的代码中,两者都在同一时间运行。 我该如何订购此活动。 如何在cool.css()完成后运行fool.css()

2 个答案:

答案 0 :(得分:0)

两个.css()调用的结果将在同一时间应用:下一次重绘页面。为了能够以任何特定顺序添加它们,您必须在.css()次调用之间强制重新绘制。

强制重新绘制的最简单方法是阅读元素的heightwidth

$('#cool').hover(function() {
    $('#fool').css({
        "background-color": "green"
    });

    $(this).height(); // Force repaint

    $(this).css({
        "background-color": "red"
    });
});

答案 1 :(得分:0)

$('#cool').hover(function(){
    var dis=$(this);
    $(this).parent().animate({'background-color':'green'},500,function(){dis.animate({'background-color':'red'},500);});
});