Event.observe(document, 'dom:loaded', setupExplanations);

function setupExplanations()
{
  var explanations = $$('.explanation');

  for (i=0; i<explanations.length; i++) {
    var ex = explanations[i];

    ex.addClassName('explanation-dynamic');
    ex.removeClassName('explanation');

    var b = ex.select('.body').first();
    b.hide();

    var l = ex.select('.label').first();
    var a = new Element('a');
    a.addClassName('label');

    Event.observe(a, 'click', function(event) { Effect.Appear(event.target.parentNode.select('.body').first(), {duration: 0.1});
 });
    Event.observe(a, 'mouseout', function(event) { Effect.Fade(event.target.parentNode.select('.body').first(), {duration: 0.1});
 });
    a.innerHTML = l.innerHTML;

    l.replace(a);
  }
}
