Digital Mountains
Menu
  • Digital Design
  • Photography
  • Live Events
  • Outdoors
  • Travel
  • Bits & Bobs
Menu

Bingo Call Tracking Grid

Posted on March 19, 2024 by andrew

For many years, the school’s PTA has run a bingo night for the children, which always goes well. This year, however, we have retired the software that they used to use to track the numbers as they were called. I put together a simple script to do a similar job, as most of the app options had too many features.

Feel free to steal it if it will be useful. To reset the coloured squares simply refresh the page.

<!DOCTYPE html>
<!-- Simple Grid to Record Numbers called during the school bingo -->
<!-- Created 15/03/2024 by Andrew Logan -->
<html>
<head>
    <title>Bingo</title>
    <style>
        body {
            background-color: black;
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        
        body::-webkit-scrollbar {
            display: none;
        }

        .content {
            display: grid;
            place-items: center;
            /*height: 100vh;*/
        }
        .grid-container {

            display: grid;
            grid-template-columns: repeat(10, 1fr);
            float: left;
            gap: 5px;
            font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
            font-size: 32pt;
            border: 10px solid hsl(46, 100%, 50%);;
            border-radius: 15px;
            padding: 10px;
            
        }
        .grid-item {
            width: 55px;
            height: 55px;
            padding:15px;
            border: 3px solid #ffffff;
            cursor: pointer;
            text-align: center;
            background-color: hsl(219, 100%, 75%);
            color: white;
            border-radius: 15px;
                        
            
        }
        .activated {
            background-color: hsl(46, 100%, 50%);
            color: white;
        }
    </style>
</head>
<body>
<div class="content">
    <div class="grid-container">
        <!-- Grid items will be added here by JavaScript -->
    </div>
</div>

<script>
    document.addEventListener('DOMContentLoaded', function () {
        const container = document.querySelector('.grid-container');
        for (let i = 1; i <= 100; i++) {
            const div = document.createElement('div');
            div.textContent = i;
            div.className = 'grid-item';
            div.addEventListener('click', function () {
                this.classList.toggle('activated');
            });
            container.appendChild(div);
        }
    });
</script>

</body>
</html>

Related

About Me

Hello! My name is Andrew, and this is my little corner of the internet. Most of the week, I am an IT Technician in a primary school, which is an extremely varied and unpredictable job! Outside of that, I am a scout leader, youth leader, digital designer and do lighting and sound for theatre.

Social & Web

@Mastodon
My favourite social media. It is a friendly, advert free space, plus it is full of interesting people and not under the control of one big company.

@Instagram
I quite like Instagram, if you avoid most of the reels, plus its where many of my friends are. I will only accept a follow request from you if I know you though! If I don't know you, follow me on Mastodon!

@flickr
I am back to using flicker now I am taking more photos. You can find some of my favourite shots here.

MrLogan.net
My site containing all educational and training resources I have created.

Experience

Employment, Qualifications and Volunteering

Live Event Experience and Skills

Web Projects

Tags

advertising Architecture Birds Black and White Christmas Church Digital Gaming Gardens Good Things Highlights Hikes Mobile Music print Review Scotland Scripts Software Thames Path Time Wasters Tourism Trip Updates

Follow This

Subscribe to RSS

Follow on Fediverse:
blog@www.digitalmountains.co.uk

AI Statement

With the increase in AI use and the potential trust issues that arise from it, it believe people and organisations should be up front about its use. Consider adding an AI statement to your site.

I use AI to assist in spelling and grammar checking, writing code and dealing with errors if I am unable to work it out myself. I will occasionally use AI image generation if I cannot find or create a suitable image, I will always mark it as such. I do not use AI for video, audio or content generation. I do not use AI for any task that I would normally pay someone for. Any resources created with the use of AI (with the exception of spell checking) are available free of charge.

I have heard all the arguments for or against AI, and reached a opinion I am comfortable with, please don't contact me with your unsolicited opinion.

© 2024 Andrew Logan