JSFiddle - React, Tailwind, and code Playground
JavaScript
(function ($) {
$.fn.jCarouselLite = function (o) {
o = $.extend({
btnPrev: null,
btnNext: null,
btnGo: null,
mouseWheel: false,
auto: null,
speed: 200,
easing: null,
vertical: false,
circular: true,
visible: 3,
start: 0,
scroll: 1,
beforeStart: null,
afterEnd: null
}, o || {});
return this.each(function () {
var b = false,
animCss = o.vertical ? "top" : "left",
sizeCss = o.vertical ? "height" : "width";
var c = $(this),
ul = $("ul", c),
tLi = $("li", ul),
tl = tLi.size(),
v = o.visible;
if (o.circular) {
ul.prepend(tLi.slice(tl - v - 1 + 1).clone()).append(tLi.slice(0, v).clone());
o.start += v
}
var f = $("li", ul),
itemLength = f.size(),
curr = o.start;
c.css("visibility", "visible");
f.css({
overflow: "hidden",
float: o.vertical ? "none" : "left"
});
ul.css({
margin: "0",
padding: "0",
position: "relative",
"list-style-type": "none",
"z-index": "1"
});
c.css({
overflow: "hidden",
position: "relative",
"z-index": "2",
left: "0px"
});
var g = o.vertical ? height(f) : width(f);
var h = g * itemLength;
var j = g * v;
f.css({
width: f.width(),
height: f.height()
});
ul.css(sizeCss, h + "px").css(animCss, -(curr * g));
c.css(sizeCss, j + "px");
if (o.btnPrev)...