2016-03-25 6 views
0

hier ein jsfiddle von Dia-Menü:Slide-Menü geschlossen werden, wenn Tab geklickt

http://jsfiddle.net/fh6p4/

$('#button').toggle( 
function() { 
    $('#right').animate({ left: 250 }, 'slow', function() { 
     $('#button').html('Close'); 
    }); 
}, 
function() { 
    $('#right').animate({ left: 0 }, 'slow', function() { 
     $('#button').html('Menu'); 
    }); 
} 

);

Ich brauche dieses Menü, wenn ich auf item1, item2 usw. klicke. Ist das möglich?

+1

http://jsfiddle.net/fh6p4/3365/ –

+1

http://jsfiddle.net/fh6p4/3371/ –

Antwort

2

Versuchen Sie, diese kurze jQuery Schnipsel verweisen können: -

$('#button, #menu > ul > li').click(function(){ 
    var $this = $('#button'); 
    $('#right').animate({ left: ($this.html() == 'Close' ? 0 : 250) },'slow', function(){ 
     $this.html($this.html() == 'Close' ? 'Menu' : 'Close'); 
    }); 
}); 

DEMO

OR

$('#button, #menu > ul > li').click(function(){ 
    var left = parseInt($('#right').css('left')); 
    $('#right').animate({ left: (left == 250 ? 0 : 250) },'slow', function(){ 
      $('#button').html(left == 250 ? 'Menu' : 'Close'); 
    }); 
}); 

DEMO

+0

es ist kurz, aber .. es ist besser, zu prüfen, Menü Sichtbarkeit, nicht 'Menü/Close' Text innerhalb der Taste. – teran

+0

@ teran..menu ist immer nur sichtbar, es ist 'links' CSS-Eigenschaft ist entweder' 0' oder '250' –

+0

eigentlich habe ich über so etwas gesprochen http://jsfiddle.net/zj073ez9/ – teran

0

Sie fangen Ereignis, wenn Sie auf Menüelement klicken, und schließen Menü schließen.

Hier sind meine Code yu

$("#menu ul li a").click(function(){ 
    $('#right').animate({ left: 0 }, 'slow', function() { 
    $('#button').html('Menu'); 
    }); 
}); 
1

ja es möglich ist,

$('#button, #menu ul li a').toggle( 
function() { 
    $('#right').animate({ left: 250 }, 'slow', function() { 
     $('#button').html('Close'); 
    }); 
}, 
function() { 
    $('#right').animate({ left: 0 }, 'slow', function() { 
     $('#button').html('Menu'); 
    }); 
}); 
Verwandte Themen