JSFiddle - React, Tailwind, and code Playground

by paulbarrett

HTML

<div id="tabs-left" class="tab-pane">
   <ul class="tabs">
    <li><a href="#tabs-1">Nunc tincidunt</a></li>
    <li><a href="#tabs-2">Proin dolor</a></li>
    <li><a href="#tabs-3">Aenean lacinia</a></li>
    </ul>
	
  <div id="tabs-1">
    <p>Granular engage: platforms; models ecologies share e-markets markets user-centred methodologies? Clicks-and-mortar visualize enhance deliverables target authentic functionalities authentic harness value-added maximize e-services, "distributed," rss-capable eyeballs content web-enabled. Scale recontextualize e-business killer, applications killer, generate streamline dynamic user-centred reinvent wikis reinvent scalable best-of-breed enable web-enabled rss-capable best-of-breed granular transparent integrate! Scale, cultivate B2C tag, efficient monetize, next-generation feeds ROI infrastructures harness bleeding-edge embrace networks synergies matrix social e-enable e-enable web-readiness deploy. A-list redefine cross-media social supply-chains repurpose recontextualize generate ROI compelling collaborative, solutions; deliverables implement, enhance</p>
  </div>
  
  <div id="tabs-2">
    <p>Aggregate; web-enabled tagclouds out-of-the-box productize grow vortals; streamline; disintermediate open-source enterprise mindshare. Sexy integrated frictionless user-centric target world-class integrateAJAX-enabled innovate, 24/7 deploy collaborative frictionless; systems experiences. Niches open-source scale post turn-key networkeffects cutting-edge</p>
  </div>
  
  <div id="tabs-3">
    <p>Turn-key innovative transparent e-tailers integrate supply-chains granular channels expedite drive enable sexy interactive bandwidth solutions networkeffects. Integrated citizen-media streamline mission-critical maximize deliverables mesh create whiteboard e-business value, empower? Facilitate, blogospheres global e-markets compelling rss-capable seize.</p>
  </div>
  
  
</div>
<!--right side-->
<div id="tabs-right" class="tab-pane">
   <ul...

JavaScript

var tabs = $( ".tab-pane" ).tabs();
   
   tabs.find( ".ui-tabs-nav li" ).draggable({
		connectToSortable : '.ui-tabs-nav',
		helper : 'clone',
		revert : 'invalid',
		cursor : 'move'
	});
	
	tabs.find( ".ui-tabs-nav" ).droppable({
		accept: ".ui-tabs-nav li",
		drop : function (ev, ui) {
			test = $(ui.draggable).find('a').attr("href");
			$(test).appendTo($(this).parent());
			tabs.tabs( "refresh" );
		}
	}).sortable({
		//axis: "x",
		connectWith : $(".tab-pane"),
		over : function (ev, ui) {
			var	$target_UL = $(ui.placeholder).parent(),
			targetWidth = $target_UL.width(),
			helperWidth = ui.helper.width(),
			padding = parseInt(ui.helper.css('paddingLeft'))
				 + parseInt(ui.helper.css('paddingRight'))
				 + parseInt(ui.helper.css('borderLeftWidth'))
				 + parseInt(ui.helper.css('borderRightWidth'));
			ui.helper.height('auto').width(targetWidth - padding);
			var id = $(ui.item);
		},
		receive: function (ev, ui) { // add this handler
			ui.item.remove(); // remove original item
            tabs.tabs("refresh");
            
		}
	});