要创建一个只显示小时和分钟的JavaScript时间控件,你可以使用HTML、CSS和JavaScript来实现。以下是一个简单的示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Time Picker</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="time-picker">
<input type="text" id="timeInput" readonly>
<div id="timePickerDropdown" class="time-picker-dropdown">
<!-- Time options will be populated here -->
</div>
</div>
<script src="script.js"></script>
</body>
</html>
.time-picker {
position: relative;
display: inline-block;
}
.time-picker-dropdown {
display: none;
position: absolute;
background-color: #fff;
border: 1px solid #ccc;
padding: 10px;
z-index: 1000;
}
.time-picker-dropdown.show {
display: block;
}
document.addEventListener('DOMContentLoaded', function() {
const timeInput = document.getElementById('timeInput');
const timePickerDropdown = document.getElementById('timePickerDropdown');
// Generate time options
for (let hour = 0; hour < 24; hour++) {
for (let minute = 0; minute < 60; minute += 5) { // Increment by 5 minutes
const timeOption = document.createElement('div');
timeOption.textContent = `${hour.toString().padStart(2, '0')}:${minute.toString().padStart(2, '0')}`;
timeOption.classList.add('time-option');
timeOption.addEventListener('click', function() {
timeInput.value = timeOption.textContent;
timePickerDropdown.classList.remove('show');
});
timePickerDropdown.appendChild(timeOption);
}
}
// Show/hide dropdown on input click
timeInput.addEventListener('click', function() {
timePickerDropdown.classList.toggle('show');
});
// Hide dropdown when clicking outside
window.addEventListener('click', function(event) {
if (!event.target.closest('.time-picker')) {
timePickerDropdown.classList.remove('show');
}
});
});
padStart
方法来格式化小时和分钟,使其始终为两位数。通过上述代码和解释,你应该能够创建一个简单且功能齐全的时间控件。
领取专属 10元无门槛券
手把手带您无忧上云