random image grid

by MD Hasan Patwary

HTML

<div id="image-container"></div>

CSS

/* #image-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    grid-auto-rows: masonry;
    grid-auto-flow: dense;
    gap: 10px;
} */

#image-container {
    column-count: 4;
    column-gap: 10px;
}

img {
    display: block;
    border-radius: 8px;
    object-fit: cover;
    width: 100%;
    margin-bottom: 10px;
}

JavaScript

$(document).ready(function() {
    const imageContainer = $('#image-container');
    const imageSources = [
        'https://via.placeholder.com/300',
        'https://via.placeholder.com/400',
        'https://via.placeholder.com/500',
        'https://via.placeholder.com/600',
        'https://via.placeholder.com/700',
        'https://via.placeholder.com/800',
        'https://via.placeholder.com/900',
        // Add more image URLs as needed
    ];
    const numberOfImages = 1000; // Number of images to generate

    function getRandomSize() {
        const sizes = [150, 200, 250, 300, 350, 400, 450];
        return sizes[Math.floor(Math.random() * sizes.length)];
    }

    function getRandomImage() {
        const src = imageSources[Math.floor(Math.random() * imageSources.length)];
        const width = getRandomSize();
        const height = getRandomSize();
        return `<img src="${src}/${width}x${height}" width="${width}" height="${height}" alt="Random Image">`;
    }

    for (let i = 0; i < numberOfImages; i++) {
        imageContainer.append(getRandomImage());
    }
});