JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<div class="drag"></div>

<iframe id="iframe">
<div class="sort_holder"></div>
  
</iframe>

CSS

.drag {
  width: 40px;
  height: 40px;
  background: red;
}

#iframe {
  width: 90%;
  height: calc(100% - 50px);
  position: absolute;
  left: 0;
  bottom: 0
}
.sort_holder {
  width: 100%;
  height: 100px;
  position: relative;
  background: blue
}

JavaScript

$(document).ready(function(){
	var f = $('#iframe').contents().find("body");
  console.info(f)
  f.append('<div class="sort_holder"></div><div class="sort_holder"></div><div class="sort_holder"></div><div class="sort_holder"></div><div class="sort_holder"></div><div class="sort_holder"></div><div class="sort_holder"></div><div class="sort_holder"></div>')
  f.find(".sort_holder").css("width", "100%").css("height", "100px").css("border", "2px solid blue").css("margin-top", "5px");     
  
 
    f.find(".sort_holder").sortable({ 
      items: ".drag", 
      connectWith: f.find(".sort_holder"),
      distance: 10,
      zIndex : 10000,
      scroll        : false,
      tolerance : "intersect",
      start: function(e, ui){
        $(ui.helper).css("width", "40px").css("height", "40px").css("background", "red")
      },
      sort: function(e, ui){

      },
      stop : function(event, ui) {

      },
      receive: function (event, ui) {

      } 
    }); 
  
    $(".drag").draggable({ 
      helper : "clone",
      iframeFix: $('#iframe'),
      iframeOffset: $('#iframe').offset(),
      connectToSortable : f.find(".sort_holder"),
      distance : 10,
      cursorAt: { left: 20, top : 20},
      scroll : false,
      start: function(event, ui) { 

      },
      drag: function(event, ui) { 

      },
      stop: function(event, ui) { 
      
      }
    });  
    
    $('#iframe').contents().on('scroll', function() {
      $(".drag").draggable("option", "cursorAt", { top: -1 * $('#iframe').contents().scrollTop() });
    });
})