$(document).ready(function()
{
    
    // Reversal
    
    $('.reverse').each(function()
    {
        $(this).replaceWith('<a href="#" class="reverse" title="Click to reverse"><span class="to_reverse">'+$(this).text()+'</span> <span class="reverse_arrow">&#8617;</span></a>');
        
        $('.reverse').click(function()
        {
            var backwards = String($(this).children('.to_reverse').text());
            var forwards = ''
            for(var i = 0; i < backwards.length; i++)
                forwards = backwards.charAt(i) + forwards;
            
            $(this).replaceWith('<span>'+forwards+'</span>');
            return false;
        });
    });
    
    // Highlighting
    
    $('a.highlight').each(function()
    {
        $(this).click(function()
        {
            var target = $($(this).attr('target'));
            $(target).addClass('highlight');
            setTimeout(function() {$(target).removeClass('highlight');}, 300);
            setTimeout(function() {$(target).addClass('highlight');}, 600);
            setTimeout(function() {$(target).removeClass('highlight');}, 900);
            setTimeout(function() {$(target).addClass('highlight');}, 1200);
            setTimeout(function() {$(target).removeClass('highlight');}, 1500);
        });
    });
});
