var Selector = Class.create();
Selector.prototype = 
{
    initialize: function(element)
    {
        this.element = $(element);
		this.selectors = Array.from(this.element.getElementsByTagName("li"));
		this.selectors.each(this.setupSelector.bind(this));
		this.doSelectItem(this.selectors.first());
    },
    
    setupSelector: function(element)
    {
        Event.observe(element, "click",  this.selectItem.bindAsEventListener(this), false);
    },
    
    selectItem: function(evt)
    {
		var element = Event.findElement(evt, "li");
		Event.stop(evt);
		this.doSelectItem(element);
    },
    
    doSelectItem: function(element)
    {
        this.show(element);
		this.selectors.without(element).each(this.hide.bind(this));
    },

    show: function(element)
    {
        var link = element.getElementsByTagName("a")[0];
        Element.addClassName(link, "select");
        Element.show($(this.itemID(link)));
    },
    
    hide: function(element)
    {
        var link = element.getElementsByTagName("a")[0];
        Element.removeClassName(link, "select");
        Element.hide($(this.itemID(link)));
    },
    
    itemID: function(element)
    {
        return element.href.match(/#(\w.+)/)[1];
    }
}

Event.observe(window, 'load', function() { new Selector('selector'); }, false);