Instead of writing individual handlers for each menu item, use a data-*
attribute to refer to a particular content which need to be displayed, then in the click handler use that attribute to decide which content has to be displayed
<div class="navbar grid_12">
<ul>
<li class="btn" id="home"><a href="#">Home</a></li>
<li class="btn" id="about" data-target=".bio"><a href="#">About Me</a></li>
<li class="btn" id="gallery" data-target=".gallery"><a href="#">Gallery</a></li>
<li class="btn" id="resume"><a href="#">Resume</a></li>
<li class="btn" id="contact" data-target=".contact"><a href="#">Contact Me</a></li>
</ul>
</div>
<div class="content-container">
<div class="bio content">
About me content
</div>
<div class="contact content">
Contact me content
</div>
<div class="gallery content">
gallery content
</div>
</div>
then
$(document).ready(function () {
var $main = $(".content-container");
var $section = $(".content").hide();
$(".navbar li.btn").click(function (e) {
e.preventDefault();
$section.hide();
var target = $(this).data('target');
if(target){
$section.filter(target).show();
}
});
});
Demo: Fiddle