JSFiddle - React, Tailwind, and code Playground

HTML

<link rel="stylesheet" href="http://jetbookingdirect.com/wp-content/w3tc/min/270f7/default.include.a1b7a2.css">
                    <div id="slidequoteformcontainer" class="gradient">
                        
                        <div id="errorbox" class="draggable">
                            <a id="errorclose" href="#"></a>   
                            <p class="errorbox">Oops. You haven't filled in all the fields we require to process a quote for you. Click back through and correct the errors.</p>                            
                        </div>    
                            <div id="steps">                    
                            <form id="slidequoteform" name="slidequoteform" action="<?php bloginfo('template_directory'); ?>/contactengine.php" method="post">
                                        <fieldset class="step">
                                            <legend>Personal Details</legend>
                                                            <div class="slide">
                                                            <fieldset class="fieldrow">
                                                                <label>Your full name:</label><input type="text" id="Name" name="name" value="" placeholder="Type in your full name" class="required"> 
                                                            </fieldset>
                                                            <fieldset class="fieldrow">
                                                                <label>Your email:</label><input type="text" id="Email" name="email" value="" placeholder="Type in your valid email" class="required">
                                                            </fieldset>
                                                            <fieldset class="fieldrow">
                                                                <label>Your number:</label><input type="text" id="Number" name="number" value="" placeholder="Type your...

CSS

#errorbox {
    border-radius:20px;
    -moz-border-radius:20px;
    -webkit-border-radius:20px;
    background: rgb(246,246,246);
    width:60%;
    position:absolute;
    top:20%;
    right:20%;
    border:4px solid #c0c0c0;
    z-index:99999; 
    display:none;  
}

#errorbox p {
    width:90%;
    text-align:center;
    padding-top:20px;
    padding-bottom:20px;
    padding:5%;
}
#errorbox a {
    margin:0 auto;
    display:block;
    background:url(http://jetbookingdirect.com/wp-content/themes/jetbook2012/img/x.png) no-repeat;
    background-position:0 0;
    width:48px;
    height:48px;
}
#errorbox a:hover {
    background-position:0 -48px;opacity:1.0;
}

#slidequoteformcontainer {
     position:relative;   
}

JavaScript

$(function() {
    /*
    number of fieldsets
    */
    var fieldsetCount = $('#slidequoteform').children().length;
    
    /*
    current position of fieldset / navigation link
    */
    var current     = 1;
    
    /*
    sum and save the widths of each one of the fieldsets
    set the final sum as the total width of the steps element
    */
    var stepsWidth    = 0;
    var widths         = new Array();
    $('#steps .step').each(function(i){
        var $step         = $(this);
        widths[i]          = stepsWidth;
        stepsWidth         += $step.width();
    });
    $('#steps').width(stepsWidth);
    
    /*
    to avoid problems in IE, focus the first input of the form
    */
    $('#slidequoteform').children(':first').find(':input:first').focus();    
    
    /*
    show the navigation bar
    */
    $('#navigation').show();
    
    /*
    when clicking on a navigation link 
    the form slides to the corresponding fieldset
    */
    $('#navigation a').bind('click',function(e){
        var $this    = $(this);
        var prev    = current;
                          $this.closest('ul').find('li').removeClass('selected');
        $this.parent().addClass('selected');
        
        

        /*
        we store the position of the link
        in the current variable    
        */
        current = $this.parent().index() + 1;
        /*
        animate / slide to the next or to the corresponding
        fieldset. The order of the links in the navigation
        is the order of the fieldsets.
        Also, after sliding, we trigger the focus on the first 
        input element of the new fieldset
        If we clicked on the last link (confirmation), then we validate
        all the fieldsets, otherwise we validate the previous one
        before the form slided
        */
        $('#steps').stop().animate({
            marginLeft: '-' + widths[current-1] + 'px'
        },500,function(){
            if(current == fieldsetCount)
             ...