2013-05-16 32 views
0

当我swiperight(从红色到绿色)红色div的淡出完成然后淡入淡出完成绿色。 当我滑动(从绿色到红色)绿色div的淡出似乎不会发生,因为红色很快就会消失?为什么jquery淡出这里不起作用

我该如何解决这个问题?

<script> 

    $(document).ready(function() { 

     var elementAlarm = document.getElementById('ContentAlarm'); 
     var elementMap = document.getElementById('ContentMap'); 

     var hammertime = Hammer(elementAlarm).on("swiperight", function (event) { 
      $(elementAlarm).fadeOut(1000); 
      $(elementMap).fadeIn(500); 

     }); 

     var hammertime = Hammer(elementMap).on("swipeleft", function (event) { 
      $(elementMap).fadeOut(1000); 
      $(elementAlarm).fadeIn(500); 
     }); 
    }); 


</script> 
<div id="ContentAlarm" style="background-color: red; width: 50%; height: 100%;text-align:center;font-size:72px;"> 
    ALARM 
</div> 
<div id="ContentMap" style="background-color: green; width: 50%; height: 100%;text-align:center;font-size:72px;"> 
    MAP 
</div> 
+1

jQuery效果是异步的。您需要使用回调来不重叠动画。 –

+0

谢谢,也帮助! – Elisabeth

回答

0

尝试调用淡入淡出功能,像这样:

$(elementMap).fadeOut(1000, function() { 
    $(elementAlarm).fadeIn(500); 
}); 
+0

啊...因为他们是异步我链/排队与回调权? – Elisabeth

+0

这就是我猜测的,它似乎在我嘲弄的小提琴中工作,但我不确定滑动运动如何影响它。 – tymeJV

相关问题