diff options
Diffstat (limited to 'index.html')
| -rw-r--r-- | index.html | 106 | 
1 files changed, 105 insertions, 1 deletions
| @@ -1,3 +1,4 @@ +<!DOCTYPE html>  <html>  	<head>  		<title> waterpi </title> @@ -9,10 +10,113 @@  	max-width: 800;  	height: auto;  } +.gallery { +    max-width: 800px; +    margin: 0 auto; +    text-align: center; +} + +.main-image { +    margin-bottom: 20px; +} + +.main-image img { +    width: 100%; +    height: auto; +    display: block; +    margin: 0 auto; +} + +.thumbnails { +    display: flex; +    justify-content: space-between; +    gap: 10px; +} + +.thumbnails img { +    width: calc(20% - 8px); +    height: auto; +    cursor: pointer; +    transition: opacity 0.3s; +} + +.thumbnails img:hover { +    opacity: 0.7; +} +  		</style>  	</head>  	<body> -		<img src="img.jpg" class="responsive"> +    <div class="gallery"> +    <div class="main-image"> +        <img id="featured" src="" alt="Hauptbild"> +    </div> +    <div class="thumbnails" id="thumbnail-container"> +    </div> +</div>  	</body>  </html> + +<script> +let imageTimesList = []; + +function roundToEvenMinute(date) { +    const minutes = date.getMinutes(); +    date.setMinutes(minutes - (minutes % 2)); +    return date; +} + +function formatTimeString(date) { +    return date.getHours().toString().padStart(2, '0') + '_' +  +           date.getMinutes().toString().padStart(2, '0'); +} + +function updateGallery() { +    const now = roundToEvenMinute(new Date()); +    imageTimesList = []; +     +    // Generiere Liste von 6 Zeitstempeln (1 Hauptbild + 5 Thumbnails) +    for(let i = 0; i < 6; i++) { +        const timeString = formatTimeString(new Date(now - i * 60 * 60 * 1000)); +        imageTimesList.push(timeString); +    } +     +    renderGallery(); +} + +function renderGallery() { +    // Hauptbild aktualisieren +    document.getElementById('featured').src = `${imageTimesList[0]}.jpg`; +     +    // Thumbnails aktualisieren +    const thumbnailContainer = document.getElementById('thumbnail-container'); +    thumbnailContainer.innerHTML = ''; +     +    // Erstelle die 5 Thumbnails +    for(let i = 1; i < imageTimesList.length; i++) { +        const thumbnail = document.createElement('img'); +        thumbnail.src = `${imageTimesList[i]}.jpg`; +        thumbnail.alt = `Thumbnail ${i}`; +        thumbnail.onclick = () => rotateImages(i); +        thumbnailContainer.appendChild(thumbnail); +    } +} + +function rotateImages(clickedIndex) { +    // Bringe das geklickte Bild nach vorne und rotiere die anderen +    const clickedTime = imageTimesList[clickedIndex]; +    imageTimesList.splice(clickedIndex, 1); // Entferne das geklickte Element +    imageTimesList.unshift(clickedTime);    // Füge es vorne ein +     +    renderGallery(); +} + +// Initial gallery setup +updateGallery(); + +// Aktualisiere die Galerie alle 2 Minuten +setInterval(updateGallery, 120000); + + +</script> | 
