In theory this will work.
Code:
$('.closed, .open').click(function(){
$(this).next('ul').animate({opacity: 'toggle'});
$(this).toggleClass('closed').toggleClass('open');
});
But it won't with your code because un-ordered lists cannot be inside paragraphs, so if you simply remove the paragraph tags and try that it should by all means, work.
The reason why find didn't match it, is because it's looking for elements inside the hyperlink which there is none.
Here's an example of the code working (
http://pastebin.me/4a55bf2ac6a4e) - if you have firebug you can also see that the class attribute is also changing.
If you're
insistent on having invalid mark-up then the following should work with your current mark-up.
Code:
$('.closed, .open').click(function(){
$('#'+$(this).attr('id')+'Hide').animate({opacity: 'toggle'});
$(this).toggleClass('closed').toggleClass('open');
});
But I advise against it.