JSFiddle - React, Tailwind, and code Playground

by neonms92

HTML

<div class="table">
    <div class="row">
        <div class="cell x">A</div>
        <div class="cell o">B</div>
        <div class="cell x">C</div>
    </div>
    <div class="row">
        <div class="cell o">D</div>
        <div class="cell x">E</div>
        <div class="cell o">F</div>
    </div>
    <div class="row">
        <div class="cell x">G</div>
        <div class="cell o">H</div>
        <div class="cell x">I</div>
    </div>
</div>

CSS

div.table {
    display:table;
}
div.row {
    display:table-row;
}
div.cell {
    display:table-cell;
    height:20px;
    width: 20px;
    text-align:center;
    vertical-align:middle;
}
.over {
    background-color: rgb(128, 180, 255);
    border-style: solid;
    border-color: black;
    border-width: 1px;
}

JavaScript

$(document).ready(function() {
    $('div.cell.x')
        .on('mouseenter', function() {
            $(this).addClass('over', 2000);
        })
        .on('mouseleave', function() {
            var me = $(this);
            window.setTimeout(function() {
                $(me).removeClass('over', 2000);
            }, 3000);
        });
});