JSFiddle - React, Tailwind, and code Playground

HTML

<div id="cssmenu">
    <ul id="list">
        <li class="active"><a id="testSlide1" href='#'><span>Home</span></a></li>
        <li><a id="testSlide2" href='#'><span>Products</span></a></li>
        <li><a id="testSlide3" href='#'><span>About</span></a></li>
        <li><a id="testSlide4" href='#'><span>Contact</span></a></li>
    </ul>
</div>
<nav class="da-arrows">
    <button id="prev">Previous</button>
    <button id="next">Next</button>
</nav>

CSS

@font-face {
    font-family: 'BebasNeueRegular';
    src: url('fonts/BebasNeue-webfont.eot');
    src: url('fonts/BebasNeue-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/BebasNeue-webfont.woff') format('woff'),
         url('fonts/BebasNeue-webfont.ttf') format('truetype'),
         url('fonts/BebasNeue-webfont.svg#BebasNeueRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
/* CSS reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
html,body {
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { border:0;
}
section, header{
	display: block;
}
/* General Demo Style */
body{
	font-family: Cambria, Palatino, "Palatino Linotype", "Palatino LT STD", Georgia, serif;
	/*background: #e0e3ec url(../images/bg.png) repeat top left;*/
	font-weight: 400;
	font-size: 15px;
	color: #593741;
	overflow-y: scroll;
}
a{
	color: #333;
	text-decoration: none;
}
.container{
	width: 100%;
	position: absolute; /*relative;*/
	text-align: center;
}
.clr{
	clear: both;
}
.container > header{
	padding: 20px 30px 10px 30px;
	margin: 0px 20px 10px 20px;
	position: relative;
	display: block;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
    text-align: center;
}
.container > header h1{
	font-family: 'BebasNeueRegular', 'Arial Narrow', Arial, sans-serif;
	font-size: 35px;
	line-height: 35px;
	position: relative;
	font-weight: 400;
	color: #936975;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    padding: 0px 0px 5px 0px;
}
.container > header h1 span{
	color: #b19099;
	text-shadow: 0px 1px 1px rgba(255,255,255,0.8);
}
.container > header h2{
	font-size:...

JavaScript

$(function() {
		
		var index = 1;
		var setActiveClass = function () {
			$( "#list > li" ).removeClass( "active" ).eq( index - 1 ).addClass( "active" );
		}
		var modifyIndex = function ( id ) {
			var count = $( "#list > li" ).length;
				
			if ( id === "next" ) {
				index++;
			} else {
				index--;
			}
			
			if ( index < 1 ) {
				index = count;
			} else if ( index > count ) {
				index = 1;
			}
			
			setActiveClass();
		}
	   
		$( "#list a" ).on( "click", function ( e ) {
			e.preventDefault();
		});
		
		$( "#list > li" ).on( "click", function () {
			index = ( $( this ).index() + 1 );
			
			setActiveClass();
		});
		
		$( "#prev, #next" ).on( "click", function () {
			modifyIndex( $( this ).attr( "id" ) );
		});
		
	});