2013-08-29 215 views
2

我创建了一个页面,我创建了两个函数:一个用于fadeOut-fadeIn,另一个用于更改布局视图。在另一个函数fadeOut()完成后执行函数

我想只在fadeOut-fadeIn函数完成时才改变视图。

$someTarget.click(function(){ 
//all actions here once the below function done 
}); 

$someTarget2.click(function(){ 
    $subtarget.fadeOut(); 
    $subtarget.fadeIn(); 
}); 
+2

试图读取jQuery的文档。它会打击你的思想。 – BentOnCoding

+2

推迟到救援,http://api.jquery.com/deferred.done/和http://www.erichynds.com/blog/using-deferreds-in-jquery –

+0

谢谢马克......这可能是解决方案...我将不得不检查 – Mufeed

回答

0
$(subtarget).fadeOut(function(){ 
    $(someTarget).trigger('click'); 
}); 

编辑:

$someTarget.live(‘click’, function(){ 
//all actions here once the below function done 
}); 

$someTarget2.click(function(){ 
    $subtarget.fadeOut(function(){ 
     $subtarget.fadeIn(function(){ 
      $someTarget.trigger('click'); 
     }); 
    }); 
}); 
+0

感谢您的快速回答...您可以写出完整的代码,将代码放在哪里......谢谢 – Mufeed

+0

假设您想要fadeOut,然后fadeIn,然后触发someTarget单击事件,编辑。 –

+0

有没有必要使用回调。动画自动链接。 – Archer

0

你可以连驱动程序的功能,然后利用回调组件:

$someTarget2.click(function(){ 
    $subtarget 
     .fadeOut() 
     .fadeIn(function(){ 
      $someTarget.click(function(){ 
       // magic actions here 
      }); 
     }); 
}); 

或者只是触发点击组件:

$someTarget2.click(function(){ 
    $subtarget 
     .fadeOut() 
     .fadeIn(function(){ 
      $someTarget.trigger('click'); 
     }); 
}); 

就像你抬头,你写的.fadeIn和。 fadeOut件意味着它们将在同一时间运行...如果你想做一个“闪光”的东西(我认为是你想要的),你需要链接它们,使它们顺序运行。

+0

不需要一开始就在淡出本身.. $ someTarget.live(“点击”,......这将在那里我有功能火的onclick功能,如果fadeout-fadeIn done .... 非常感谢您的支持人员.. – Mufeed

+0

只是一个人抬头,'.live()'已弃用,已经很长时间了。您应该使用'.on )'而不是,如果你不使用简写('.click()'是'.o的缩写N( '点击')')。 – PlantTheIdea

+0

@Plant ...我知道,但这并没有解决这里的问题... – Mufeed

0

可以使用回调在fadeInfadeOut

$someTarget2.click(function(){ 
    $subtarget.fadeOut("fast", function() { 
     $subtarget.fadeIn("fast", function() { 
      //done fading in, change your view here 
     }); 
    }); 

}); 
+0

不需要从fadeOut本身开始.. $ someTarget.live('click',...这将是我必须开启onclick函数的功能,如果fadeOut-fadeIn done .... 的支持家伙非常感谢.. – Mufeed

0
$someTarget2.click(function(){ 
    $someTarget.fadeOut('slow').fadeIn('slow',function(){ 
     // change view here 
    }); 
}); 
+0

它不@FlashThunder那好以这种方式工作。 –

+1

该动画将链。这有什么错呢? – Archer

+1

别介意我累了,对不起。 –

相关问题