Если за текущим элементом "a" нет элемента "ul", принудительно отменяется выполнение события "click" - "if (!el.length) return false".
Как вариант:
$(document).ready(function() {
$('.menu li a').click(function(){
var el = $(this).next('ul');
if (el.length !== 0) {
if (el.css('display') == 'none') {
$('.menu li ul').slideUp(500);
$('.menu li a').removeClass ('selected');
el.slideDown(500);
$(this).addClass ('selected');
} else {
el.slideUp(500);
$(this).removeClass ('selected');
}
}
})
});