JSFiddle - React, Tailwind, and code Playground

by krofdrakula

HTML

<div id="widget-1" class="my-widget-type">0</div>
<div id="widget-2" class="my-widget-type">0</div>

JavaScript

$.fn.getAPI = function() {
    return this.data('API');
};

$('.my-widget-type').each(function() {
    var widget = $(this),
        i = 0,
        add = function(n) { i += n || 1; },
        refresh = function() { widget.text(i); };
    
    widget.data('API', {
        add: add,
        refresh: refresh
    });
});

var API = $('#myWidget').getAPI();
API.add(3);
API.refresh();