2012-06-20 49 views
0

jQuery「切換」功能的問題。通過鼠標懸停打開並關閉後退,而不是通過點擊

可以切換打開的鼠標懸停發起和鼠標移開接近,但不是通過點擊...

現在的情況是在這裏:http://temp.wave-pr.com.hk/gbf/dock

如何使它開放,並通過鼠標懸停關閉和鼠標移開?

JS如下:

$(function() { 
// Stack initialize 
var openspeed = 300; 
var closespeed = 100; 
$('.stack>img').toggle(function(){ 
    var vertical = 0; 
    var horizontal = 0; 
    var $el=$(this); 
    $el.next().children().each(function(){ 
     $(this).animate({top: '-' + vertical + 'px', left: horizontal + 'px'}, openspeed); 
     vertical = vertical + 55; 
     horizontal = (horizontal+.75)*2; 
    }); 
    $el.next().animate({top: '-50px', left: '10px'}, openspeed).addClass('openStack') 
     .find('li a>img').animate({width: '50px', marginLeft: '9px'}, openspeed); 
    $el.animate({paddingTop: '0'}); 
}, function(){ 
    //reverse above 
    var $el=$(this); 
    $el.next().removeClass('openStack').children('li').animate({top: '55px', left: '-10px'}, closespeed); 
    $el.next().find('li a>img').animate({width: '79px', marginLeft: '0'}, closespeed); 
    $el.animate({paddingTop: '35px'}); 
}); 
// Stacks additional animation 
$('.stack li a').hover(function(){ 
    $("img",this).animate({width: '56px'}, 100); 
    $("span",this).animate({marginRight: '10px'}); 
},function(){ 
    $("img",this).animate({width: '50px'}, 100); 
    $("span",this).animate({marginRight: '0'}); 
}); 

});

+1

然後使用['hover()'](http://api.jquery.com/hover/)而不是'toggle()'... – elclanrs

回答

1

而不是.toggle,使用.hover函數。 ex,

$('.stack>img').hover(function() { 
    //previos was togle 
相關問題