Кажется, есть проблема с установкой ширины / высоты в 0, что должно происходить в конце анимации toggle
непосредственно перед установкой display: none
. Единственный способ выяснить, как это исправить, это сделать анимацию длинным путем:
var $c = $('#content'),
cw, ch;
$c.show();
cw = $c.width();
ch = $c.height();
$c.hide();
$('#menu').toggle(function() {
$c.css({
'width': 1,
'height': 1,
'opacity': 0
}).show().animate({
'width': cw,
'height': ch,
'opacity': 1
}, 700);
}, function() {
$c.animate({
'width': 1,
'height': 1,
'opacity': 0
}, 700, function() {
$c.hide();
});
});