0

嗨,我在弄清楚如何完成这项任务时遇到了一些问题。我得到了一个包含元素的包装器,点击一下我就可以展示它们了。在它们可见后,我想执行另一个任务,这里的问题是它为包装器中的每个元素触发它。

编辑 对不起本来是.fadeIn()

示例代码:Jsfiddle

<div id="wrapper">
    <div class="div-item"></div>
    <div class="div-item"></div>
    <div class="div-item"></div>
    <div class="div-item"></div>
    <div class="div-item"></div>
</div>

<a href="#" id="click-me">click me</a>

$('#click-me').on('click', function()  {
    $('#wrapper > div.div-item').fadeIn(600, function() {
        console.log('show');
    });

    return false;
});
4

1 回答 1

0

如果没有动画(或其他异步操作),您不需要回调,只需执行以下操作:

$('#click-me').on('click', function()  {
  $('#wrapper > div.div-item').show();
  // follow-up code

  return false;
});

否则,请尝试:

$('#click-me').on('click', function()  {
  $('#wrapper > div.div-item').fadeIn().promise().done(function () {
    console.log('all done');
  });

  return false;
});

演示:http: //jsbin.com/ukovuz/2/

于 2013-01-23T14:57:41.577 回答