JSFiddle - React, Tailwind, and code Playground

HTML

<table id="tabla" border="2">
    <tr>
        <td><img /></td> 
        <td><img /></td>
    </tr>
    <tr>
        <td><img /></td>
        <td><img /></td>
    </tr>
    <tr>
        <td><img /></td>
        <td><img /></td>
    </tr>
    <tr>
        <td><img /></td>
        <td><img /></td>
    </tr>
</table>

CSS

#tabla img { width:300px; height:300px; }

JavaScript

window.onload=function(){
    var imagenes=[
        "http://www.i-perros.com/image-files/pastor-aleman-andreasgraemiger.jpg",
        "http://www.i-perros.com/image-files/westie-richard-collinson.jpg",
        "http://www.i-perros.com/image-files/bobtail-dewollewei-3.jpg",
        "http://www.i-perros.com/image-files/american-staffordshire-pinksherbert.jpg"
    ];
    imagenes.random=function(src){
        if (this.length==1) return this[0];
        var aux;
        do
        {
            aux=this[Math.floor(Math.random()*this.length)];
        }
        while(src==aux);
        return aux;
    };
    
    var tabla=document.getElementById("tabla");
    var imgs=tabla.getElementsByTagName("IMG");
    for (var i=0, n=imgs.length;i<n;i++)
        imgs[i].src=imagenes.random("");
    var celdas=tabla.getElementsByTagName("TD");
    for (var i=0, n=celdas.length;i<n;i++)
        celdas[i].onmouseenter=function(ev){
            var imgs=this.getElementsByTagName("IMG");
            if (imgs.length>0)
                imgs[0].src=imagenes.random(imgs[0].src);
        };
};