jQuery().ready(function(){
    // simple accordion
    jQuery('#list1a').accordion();
    jQuery('#list1b').accordion({
      autoheight: false
    });

    // second simple accordion with special markup
    jQuery('#navigation').accordion({
      active: false,
      header: '.head',
      navigation: true,
      event: 'mouseover',
      fillSpace: true,
      animated: 'easeslide'
    });

    // highly customized accordion
    jQuery('#list2').accordion({
      event: 'mouseover',
      active: '.selected',
      selectedClass: 'active',
      animated: "bounceslide",
      header: "dt"
    }).bind("change.ui-accordion", function(event, ui) {
      jQuery('<div>' + ui.oldHeader.text() + ' hidden, ' + ui.newHeader.text() + ' shown</div>').appendTo('#log');
    });

    // first simple accordion with special markup
    jQuery('#list3').accordion({
      header: 'div.title',
      active: false,
      alwaysOpen: false,
      animated: false,
      autoheight: false
    });

    var wizard = $("#wizard").accordion({
      header: '.title',
      event: false
    });

    var wizardButtons = $([]);
    $("div.title", wizard).each(function(index) {
      wizardButtons = wizardButtons.add($(this)
      .next()
      .children(":button")
      .filter(".next, .previous")
      .click(function() {
        wizard.accordion("activate", index + ($(this).is(".next") ? 1 : -1))
      }));
    });

    // bind to change event of select to control first and seconds accordion
    // similar to tab's plugin triggerTab(), without an extra method
    var accordions = jQuery('#list1a, #list1b, #list2, #list3, #navigation, #wizard');

    jQuery('#switch select').change(function() {
      accordions.accordion("activate", this.selectedIndex-1 );
    });
    jQuery('#close').click(function() {
      accordions.accordion("activate", -1);
    });
    jQuery('#switch2').change(function() {
      accordions.accordion("activate", this.value);
    });
    jQuery('#enable').click(function() {
      accordions.accordion("enable");
    });
    jQuery('#disable').click(function() {
      accordions.accordion("disable");
    });
    jQuery('#remove').click(function() {
      accordions.accordion("destroy");
      wizardButtons.unbind("click");
    });
  });
