jQuery.fn.zexpand = function(options) {
    
    var settings = jQuery.extend({
        heading: 'h1',
        container: 'div'
    }, options);

    $(this).find(settings['heading']+' a').click(function() {
        var name = $(this).attr('href').replace('#','');
        var hidden = $(settings['container']+'.'+name).is(":hidden");
        if(hidden) {
            $(settings['container']+'.'+name).slideDown();
            $(this).removeClass('collapsed');
            $(this).addClass('expanded');
        } else {
            $(settings['container']+'.'+name).slideUp();
            $(this).removeClass('expanded');
            $(this).addClass('collapsed');
        }
    });

    $(this).find(settings['heading']+' a').each(function() {
        var test = $(this).hasClass('expanded');
        if(test) {
            var name = $(this).attr('href').replace('#','');
            $(settings['container']+'.'+name).show();
            $(this).removeClass('collapsed');
            $(this).addClass('expanded');
        }
    })

};
