我有一个函数,可以在滚动到视图中时淡出特定的 DIV。我在这些 DIV 中有一些子元素,我想在每个淡入淡出动画结束时为其设置动画。如何在以下函数中添加其他函数?
$(window).scroll(function(d,h) {
tiles.each(function(i) {
a = $(this).offset().top + $(this).height();
b = $(window).scrollTop() + $(window).height();
if (a < b) $(this).fadeTo(500,1) ???AND SLIDE CHILD ELEMENT ALSO!!???;
///how to I target each child element to do something in the above line???
});
});
这里有一个jsFiddle 演示这将帮助您形象化我的概念。动画已经可以工作,问题是滑动子元素最初开始,我想要做的是在每个 onScroll 淡入淡出开始时连续启动每个滑动功能。在此先非常感谢。这将帮助我摆脱 jQuery 的困扰!
如果您想在淡入淡出完成后执行某些操作,请创建一个在动画结束时触发的回调函数:
var that = $(this);
if (a < b) $(this).fadeTo(500,1, function() {
alert ("Do something afterwards");
that.children().someAction();
});
我希望,这就是你想要的。
要使您的示例正常工作,您可以使用以下命令:
$(window).scroll(function(d,h) {
tiles.each(function(i) {
a = $(this).offset().top + $(this).height();
b = $(window).scrollTop() + $(window).height();
var that = $(this);
if (a < b && true != $(this).data('faded')) {
$(this).data('faded', true).fadeTo(500,1, function() {
that.find('div').animate({left: '+=300', top: '+=12'}, 4500);
});
}
});
});
这是一个演示:http://jsfiddle.net/mSRsA/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)