With Elementor Pro , you can easily create beautiful and stunning website pages without any technical knowledge. This powerful plugin comes with a live drag-and-drop editor that makes it easy for anyone to build pages quickly and easily. Plus, its integration with popular marketing tools like MailChimp, ConvertKit, Zapier, GetResponse, etc. makes marketing your site easier than ever.
Name Elementor Pro Type Plugin Version 3.34.1 File Name elementor-pro File Type zip (Installable Archive) File Host mediafire.com | Mirror Updated On: 14 hours ago
Download Timer
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: -apple-system, BlinkMacSystemFont, ‘Segoe UI’, ‘Roboto’, ‘Oxygen’,
‘Ubuntu’, ‘Cantarell’, ‘Fira Sans’, ‘Droid Sans’, ‘Helvetica Neue’,
sans-serif;
background: #ffffff;
min-height: 100vh;
padding: 20px;
}
.timer-container {
max-width: 100%;
width: 100%;
}
.timer-header {
margin-bottom: 30px;
}
.timer-header h1 {
font-size: 28px;
color: #1a1a1a;
margin-bottom: 12px;
font-weight: 600;
}
.timer-header p {
font-size: 16px;
color: #666;
line-height: 1.6;
}
.timer-display {
margin: 40px auto;
display: flex;
justify-content: center;
display: none;
}
.timer-display.show {
display: flex;
}
.timer-wrapper {
display: flex;
align-items: center;
gap: 24px;
background: #f9f9f9;
padding: 24px 32px;
border-radius: 16px;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
min-width: auto;
max-width: 350px;
}
.timer-circle {
font-size: 42px;
font-weight: 700;
color: #7c3aed;
min-width: 60px;
text-align: center;
}
.timer-circle.empty {
color: #10b981;
}
.timer-text {
font-size: 14px;
color: #999;
font-weight: 500;
}
.timer-text.completed {
color: #10b981;
}
.timer-number {
display: none;
}
.timer-number.completed {
color: #10b981;
}
.content-wrapper {
margin-top: 40px;
display: flex;
flex-direction: column;
align-items: center;
gap: 20px;
}
.link-display {
display: none;
background: #f0f4ff;
border: 1px solid #d4e4ff;
border-radius: 12px;
padding: 20px 24px;
text-align: center;
max-width: 500px;
width: 100%;
}
.link-display.show {
display: block;
animation: fadeIn 0.3s ease;
}
.link-display p {
font-size: 12px;
color: #666;
margin-bottom: 10px;
font-weight: 500;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.link-display .link-text {
font-size: 14px;
color: #7c3aed;
word-break: break-all;
font-family: ‘Courier New’, monospace;
background: white;
padding: 12px 16px;
border-radius: 8px;
border: 1px solid #e0e7ff;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(-10px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.button-wrapper {
display: flex;
justify-content: center;
}
.download-button {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 14px 40px;
border: none;
border-radius: 50px;
background: #f5f5f5;
color: #1a1a1a;
font-size: 15px;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
text-decoration: none;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.download-button:hover:not(:disabled) {
background: #efefef;
transform: translateY(-2px);
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}
.download-button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
.download-button.active {
background: #7c3aed;
color: white;
}
.download-button.active:hover {
background: #6d28d9;
}
.download-icon {
width: 20px;
height: 20px;
}
.copy-feedback {
display: none;
position: fixed;
top: 20px;
right: 20px;
background: #10b981;
color: white;
padding: 12px 20px;
border-radius: 8px;
font-size: 14px;
font-weight: 500;
box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
animation: slideIn 0.3s ease;
z-index: 1000;
}
.copy-feedback.show {
display: block;
}
@keyframes slideIn {
from {
transform: translateX(400px);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
@media (max-width: 600px) {
.timer-container {
padding: 40px 24px;
}
.timer-header h1 {
font-size: 24px;
}
.timer-wrapper {
width: 140px;
height: 140px;
}
.timer-number {
font-size: 42px;
}
.download-button {
padding: 14px 32px;
font-size: 15px;
}
}
/* SVG Icon Styles */
.svg-icon {
display: inline-block;
width: 1em;
height: 1em;
vertical-align: -0.125em;
fill: currentColor;
}
✓ Link copied to clipboard! Paste it in a new tab
// ========================================
// CUSTOMIZE THESE VALUES
// ========================================
const TIMER_DURATION = 35; // Timer duration in seconds (change this number)
const DOWNLOAD_URL = “https://workupload.com/file/pjaP5A2MYde”; // Your download link here
const BUTTON_LABEL = “Copy Link”; // Button text
// ========================================
// END OF CUSTOMIZATION
// ========================================
let timeRemaining = TIMER_DURATION;
let timerInterval = null;
let timerStarted = false;
const timerText = document.getElementById(‘timerText’);
const downloadButton = document.getElementById(‘downloadButton’);
const timerCircle = document.getElementById(‘timerCircle’);
const timerDisplay = document.querySelector(‘.timer-display’);
const copyFeedback = document.getElementById(‘copyFeedback’);
const linkDisplay = document.getElementById(‘linkDisplay’);
const linkText = document.getElementById(‘linkText’);
function handleButtonClick() {
if (!timerStarted) {
// Start the timer
timerStarted = true;
timerDisplay.classList.add(‘show’);
downloadButton.disabled = true;
startTimer();
} else if (timerStarted && !downloadButton.classList.contains(‘active’)) {
// Timer is running, do nothing
return;
} else {
// Timer is complete, copy the link
copyToClipboard();
}
}
function startTimer() {
timerInterval = setInterval(() => {
timeRemaining–;
updateDisplay();
if (timeRemaining <= 0) {
clearInterval(timerInterval);
completeTimer();
}
}, 1000);
}
function updateDisplay() {
timerCircle.textContent = timeRemaining;
}
function completeTimer() {
timerCircle.textContent = '✓';
timerCircle.classList.add('empty');
timerText.textContent = 'Ready!';
timerText.classList.add('completed');
// Show the link and button
linkText.textContent = DOWNLOAD_URL;
linkDisplay.classList.add('show');
downloadButton.disabled = false;
downloadButton.classList.add('active');
downloadButton.textContent = '';
downloadButton.innerHTML = 'Copy Link’;
}
function copyToClipboard() {
navigator.clipboard.writeText(DOWNLOAD_URL).then(() => {
copyFeedback.classList.add(‘show’);
setTimeout(() => {
copyFeedback.classList.remove(‘show’);
}, 3000);
}).catch(() => {
alert(‘Failed to copy. Please try again.’);
});
}