我遇到了jquery问题。
我有这个代码,工作正常。
<script>
$(document).ready(function(){
$( "#botonbox" ).click(function() {
$( ".middle-content-left" ).css( "height", "700" );
$( "#normalboxid" ).animate({height:'700px'},1000 );
$( "#botonbox" ).css( "display", "none" );
});
});
</script>
我想只有当这个动画结束时,如果光标鼠标留下。中间内容回来,回到第一高度(.middle-content-left to height:310px和#normalboxdiv to height:132px)
答案 0 :(得分:1)
.click
方法没有回调;它只有一个处理程序参数。换句话说,第二个function() { }
块是语法错误。
相反,如果您希望在#normalboxid
动画完成后激活第二部分,请创建一个全局变量,并在单击该元素时将其设置为true。然后,在鼠标离开处理程序内部,检查前一个变量是真还是假:
<script>
var botonboxClicked = false;
$(document).ready(function(){
$( "#botonbox" ).click(function() {
$( ".middle-content-left" ).css( "height", "700" );
$( "#normalboxid" ).animate({height:'700px'}, 1000, function() {
botonboxClicked = true;
});
$( "#botonbox" ).css( "display", "none" );
});
$( ".middle-content-left" ).mouseleave(function() {
if (botonboxClicked) {
$( ".middle-content-left" ).animate({height:'310px'},1000 );
$( "#normalboxid" ).animate({height:'132px'},1000 );
$( "#botonbox" ).css( "display", "block" );
}
});
});
</script>
请参阅http://api.jquery.com/click/和http://api.jquery.com/animate/。