Calculator Tools Calculator Tools
Create

Slot Machine Buttons

Nov 18, 2023

About this app

A web app featuring 99 buttons that simulate a slot machine with random numbers from 1 to 600.

Slot Machine Buttons

Related apps

Put this on your site

Source

                    <html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">

<title>Slot Machine Buttons</title>
<meta name="description" content="A web app featuring 99 buttons that simulate a slot machine with random numbers from 1 to 600.">
<meta name="keywords" content="slot machine, random number, game, interactive, fun">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap" rel="stylesheet">

<script type="text/javascript">
try {
document.addEventListener("DOMContentLoaded", function() {
for (let i = 0; i < 99; i++) {
$("#main-container").append(
`<button id="slot-btn-${i}" class="btn slot-btn" onclick="spin(${i})">Spin</button>`
);
}
});

function getRandomNumber(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}

function spin(buttonId) {
const btn = $(`#slot-btn-${buttonId}`);
btn.prop('disabled', true).text('Spinning...');

const spinTime = 2000;
const intervalTime = 100;
const spins = spinTime / intervalTime;
let currentSpin = 0;

const spinInterval = setInterval(function() {
if (currentSpin >= spins) {
clearInterval(spinInterval);
const number = getRandomNumber(1, 600);
btn.text(number.toString().padStart(3, '0')).prop('disabled', false);
} else {
const randomDisplay = getRandomNumber(0, 699).toString().padStart(3, '0');
btn.text(randomDisplay);
currentSpin++;
}
}, intervalTime);
}

} catch (error) {
throw error;
}
</script>

<style>
body {
font-family: 'Press Start 2P', cursive;
background: linear-gradient(to top, #76b852, #8DC26F);
}
#main-container {
padding-top: 50px;
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
}
.slot-btn {
font-size: 1rem;
width: 80px;
height: 80px;
border-radius: 10px;
background-color: #fff;
color: #333;
box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
transition: transform 0.1s ease;
}
.slot-btn:active {
transform: translateY(4px);
box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.2);
}
</style>
</head>
<body>
<div id="main-container" class="container">
<!-- Slot Machine Buttons -->
</div>
</body>
</html>