JSFiddle - React, Tailwind, and code Playground

by lbstr

HTML

<ul>
    <li>Click me</li>
</ul>

<button type="button">Add another</button>

CSS

li { cursor: pointer; }

JavaScript

$.fn.MOD_bindOnce = function(event, callback) {
    var key = "MOD_BOUND_" + event;
    return this.each(function(){
        var $this = $(this);
        if ($this.data(key)) { return 1; }
        $this.data(key, true).bind(event, callback);
    });
};

var bindLiClick = function(){
    $('li').MOD_bindOnce('click', function(){
        var $li = $(this);
        $li.text($li.text() + "!");
    });
};

var bindButtonClick = function(){
    $('button').click(function(){
        $('ul').append('<li>Click me</li>');
        bindLiClick();
    });
};

$(function(){
    bindButtonClick();
    bindLiClick();
});