JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://hammerjs.github.io/dist/hammer.min.js"></script>
<h3>swipe</h3>
<div id="red" class="colorContainer">
    <div class="color redColor"></div>
</div>

<h3>drag</h3>
<div id="blue" class="colorContainer">
    <div class="color redColor"></div>
</div>

<h2 id="event"></h2>

CSS

body {
    overflow:hidden;
    height: 100%;
}
.colorContainer {
    position: relative;
    padding:0 200px;
    width: 100%;
    border: 1px solid;
    margin-top: 25px;
}
.color{
    position: relative;
    left: 100px;
	width:100px;
    height:100px;
	cursor:pointer;
}
#red .color {
    background: red;
}

#blue .color {
    background: blue;
}

JavaScript

$(function(){  
    var red = document.getElementById("red"),
        blue = document.getElementById("blue");
    
    //jquery.hammer.js
    // $(red).hammer().on("swipe", function(event) {
    //     if(event.gesture.direction === "right") {
    //         $(this).find(".color").animate({left: "+=100"}, 500);
    //     } else if(event.gesture.direction === "left") {
    //         $(this).find(".color").animate({left: "-=100"}, 500);
    //     }
    //     $("#event").text(event.gesture.direction);
    // });
    
    //hammer.js
    
    //Swipe
    Hammer(red).on("swipeleft", function() {
        $(this).find(".color").animate({left: "-=100"}, 500);
        $("#event").text("swipe left");
    });
    
    Hammer(red).on("swiperight", function() {
        $(this).find(".color").animate({left: "+=100"}, 500);
        $("#event").text("swipe right");
    });
    
    // Drag
    Hammer(blue).on("dragleft", function() {
        $(this).find(".color").animate({left: "-=100"}, 500);
        $("#event").text("drag left");
    });
    
    Hammer(blue).on("dragright", function() {
        $(this).find(".color").animate({left: "+=100"}, 500);
        $("#event").text("drag right");
    });
});

// jquery.hammer.js
(function($, Hammer, dataAttr) {
    function hammerify(el, options) {
        var $el = $(el);
        if(!$el.data(dataAttr)) {
            $el.data(dataAttr, new Hammer($el[0], options));
        }
    }

    $.fn.hammer = function(options) {
        return this.each(function() {
            hammerify(this, options);
        });
    };

    // extend the emit method to also trigger jQuery events
    Hammer.Manager.prototype.emit = (function(originalEmit) {
        return function(type, data) {
            originalEmit.call(this, type, data);
            jQuery(this.element).triggerHandler({
                type: type,
                gesture: data
            });
        };
    })(Hammer.Manager.prototype.emit);
})(jQuery, Hammer, "hammer");