Когда надо делать модальные окна или по любым другим причинам затемнять бэкграунд - я сразу после открывающего body пихаю растянутый по всему полю div#black с различной опасити. Ну а дальше элементарно.
$('#black').on('click', function() {
$('#menu').animate({ left: '-menuWidth' });
})
menuWidth соответственно ширине вашего блока с меню.