JSFiddle - React, Tailwind, and code Playground

by Neviton

HTML

<div class="wrapper" id="wrapper">
	<div class="content">
		<ul>
			<li>Item 1</li>
			<li>Item 2</li>
			<li>Item 3</li>
			<li>Item 4</li>
			<li>Item 5</li>
			<li>Item 6</li>
			<li>Item 7</li>
			<li>Item 8</li>
			<li>Item 9</li>
			<li>Item 10</li>
			<li>Item 11</li>
			<li>Item 12</li>
			<li>Item 13</li>
			<li>Item 14</li>
			<li>Item 15</li>
			<li>Item 16</li>
			<li>Item 17</li>
			<li>Item 18</li>
			<li>Item 19</li>
			<li>Item 20</li>
			<li>Item 21</li>
			<li>Item 22</li>
			<li>Item 23</li>
			<li>Item 24</li>
			<li>Item 25</li>
			<li>Item 26</li>
			<li>Item 27</li>
			<li>Item 28</li>
			<li>Item 29</li>
			<li>Item 30</li>
			<li>Item 31</li>
			<li>Item 32</li>
			<li>Item 33</li>
			<li>Item 34</li>
			<li>Item 35</li>
			<li>Item 36</li>
			<li>Item 37</li>
			<li>Item 38</li>
			<li>Item 39</li>
			<li>Item 40</li>
			<li>Item 41</li>
			<li>Item 42</li>
			<li>Item 43</li>
			<li>Item 44</li>
			<li>Item 45</li>
			<li>Item 46</li>
			<li>Item 47</li>
			<li>Item 48</li>
			<li>Item 49</li>
			<li>Item 50</li>
			<li>Item 51</li>
			<li>Item 52</li>
			<li>Item 53</li>
			<li>Item 54</li>
			<li>Item 55</li>
			<li>Item 56</li>
			<li>Item 57</li>
			<li>Item 58</li>
			<li>Item 59</li>
			<li>Item 60</li>
			<li>Item 61</li>
			<li>Item 62</li>
			<li>Item 63</li>
			<li>Item 64</li>
			<li>Item 65</li>
			<li>Item 66</li>
			<li>Item 67</li>
			<li>Item 68</li>
			<li>Item 69</li>
			<li>Item 70</li>
			<li>Item 71</li>
			<li>Item 72</li>
			<li>Item 73</li>
			<li>Item 74</li>
			<li>Item 75</li>
			<li>Item 76</li>
			<li>Item 77</li>
			<li>Item 78</li>
			<li>Item 79</li>
			<li>Item 80</li>
			<li>Item 81</li>
			<li>Item 82</li>
			<li>Item 83</li>
			<li>Item 84</li>
			<li>Item 85</li>
			<li>Item 86</li>
			<li>Item 87</li>
			<li>Item 88</li>
			<li>Item 89</li>
			<li>Item 90</li>
			<li>Item 91</li>
			<li>Item 92</li>
			<li>Item 93</li>
			<li>Item 94</li>
			<li>Item 95</li>
			<li>Item 96</li>
			<li>Item...

CSS

.wrapper {
	height: 200px;
	background-color: #fff;
	position: relative;
	overflow: hidden;
}

JavaScript

/*! iScroll v5.1.1 ~ (c) 2008-2014 Matteo Spinelli ~ http://cubiq.org/license */
(function (window, document, Math) {
var rAF = window.requestAnimationFrame  ||
    window.webkitRequestAnimationFrame  ||
    window.mozRequestAnimationFrame     ||
    window.oRequestAnimationFrame       ||
    window.msRequestAnimationFrame      ||
    function (callback) { window.setTimeout(callback, 1000 / 60); };

var utils = (function () {
    var me = {};

    var _elementStyle = document.createElement('div').style;
    var _vendor = (function () {
        var vendors = ['t', 'webkitT', 'MozT', 'msT', 'OT'],
            transform,
            i = 0,
            l = vendors.length;

        for ( ; i < l; i++ ) {
            transform = vendors[i] + 'ransform';
            if ( transform in _elementStyle ) return vendors[i].substr(0, vendors[i].length-1);
        }

        return false;
    })();

    function _prefixStyle (style) {
        if ( _vendor === false ) return false;
        if ( _vendor === '' ) return style;
        return _vendor + style.charAt(0).toUpperCase() + style.substr(1);
    }

    me.getTime = Date.now || function getTime () { return new Date().getTime(); };

    me.extend = function (target, obj) {
        for ( var i in obj ) {
            target[i] = obj[i];
        }
    };

    me.addEvent = function (el, type, fn, capture) {
        el.addEventListener(type, fn, !!capture);
    };

    me.removeEvent = function (el, type, fn, capture) {
        el.removeEventListener(type, fn, !!capture);
    };

    me.momentum = function (current, start, time, lowerMargin, wrapperSize, deceleration) {
        var distance = current - start,
            speed = Math.abs(distance) / time,
            destination,
            duration;

        deceleration = deceleration === undefined ? 0.0006 : deceleration;

        destination = current + ( speed * speed ) / ( 2 * deceleration ) * ( distance < 0 ? -1 : 1 );
        duration = speed / deceleration;

        if...