YouTube Thumbnail Downloader
YouTube Thumbnail Downloader
/* Reset some default styles */
body, h1, h2, p, ul {
margin: 0;
padding: 0;
}
body {
font-family: Arial, sans-serif;
background-color: #f0f0f0;
}
header {
background-color: #ff0000;
color: #fff;
text-align: center;
padding: 20px 0;
}
main {
max-width: 600px;
margin: 20px auto;
padding: 20px;
background-color: #fff;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
}
.input-container {
text-align: center;
margin-bottom: 20px;
}
label {
font-weight: bold;
display: block;
margin-bottom: 10px;
}
input {
width: 100%;
padding: 10px;
border: 1px solid #ccc;
border-radius: 5px;
margin-bottom: 10px;
}
button {
background-color: #ff0000;
color: #fff;
border: none;
padding: 10px 20px;
border-radius: 5px;
cursor: pointer;
}
.thumbnail-container {
text-align: center;
}
#thumbnail {
max-width: 100%;
}
footer {
text-align: center;
background-color: #ff0000;
color: #fff;
padding: 10px 0;
}
document.addEventListener("DOMContentLoaded", function () {
const videoUrlInput = document.getElementById("video-url");
const downloadBtn = document.getElementById("download-btn");
const thumbnailImg = document.getElementById("thumbnail");
downloadBtn.addEventListener("click", function () {
const videoUrl = videoUrlInput.value;
const videoId = getVideoId(videoUrl);
if (videoId) {
const thumbnailUrl = `https://img.youtube.com/vi/${videoId}/maxresdefault.jpg`;
thumbnailImg.src = thumbnailUrl;
} else {
alert("Invalid YouTube URL. Please enter a valid URL.");
}
});
function getVideoId(url) {
const videoIdMatch = url.match(/v=([A-Za-z0-9_\-]+)/);
return videoIdMatch ? videoIdMatch[1] : null;
}
});