Hallo Leute,
ich beschäftige mich gerade mit der Erstellung einer eigenen, sehr einfachen Website. Ich bin aber blutiger Anfänger in HTML/CSS/JS und habe mir daher meinen bisherigen Quellcode aus verschiedenen Quellen, v.a. w3schools.com, zusammengesucht und entsprechend modifiziert.
Eine Kleinigkeit frisst nun schon mein ganzes Wochenende auf und ich bräuchte etwas Hilfe. Zielsetzung ist:
1) Bild1 als statisches Thumbnail anzeigen
2) bei onmouseenter ein anderes Bild2 als Thumbnail (eine GIF Animation von Bild1) anzeigen (eine Art Hoover-Effekt) und bei onmouseleave wieder zurück auf Bild1 schalten
3) bei onmouseclick ein großes Bild3 modal über die Seite legen
4) Unabhängig der oben genannten Punkte, frage ich mich ob es möglich ist Bildpfade irgendwo global zu definieren, damit ich bei Veränderungen nicht immer an x verschiedenen Stellen eingreifen muss... (die momentan genutzen Bild-URL sind nur Platzhalter)
Soweit funktioniert der unten angehängte Quellcode, jedoch wäre es schön wenn jemand mit mehr Verständnis einmal darüber schauen könnte und ein paar Tipps/Verbesserungsvorschläge hätte.
Vielen Dank
lg Christian
PS: Per HTML-Block definierter Code im Beitrag erhält automatisch überall URL-Tags, welche den Quellcode unbrauchbar machen. Kann man das irgendwie abstellen?
(Damit das Codebeispiel läuft müssen derzeit sämtliche
ich beschäftige mich gerade mit der Erstellung einer eigenen, sehr einfachen Website. Ich bin aber blutiger Anfänger in HTML/CSS/JS und habe mir daher meinen bisherigen Quellcode aus verschiedenen Quellen, v.a. w3schools.com, zusammengesucht und entsprechend modifiziert.
Eine Kleinigkeit frisst nun schon mein ganzes Wochenende auf und ich bräuchte etwas Hilfe. Zielsetzung ist:
1) Bild1 als statisches Thumbnail anzeigen
2) bei onmouseenter ein anderes Bild2 als Thumbnail (eine GIF Animation von Bild1) anzeigen (eine Art Hoover-Effekt) und bei onmouseleave wieder zurück auf Bild1 schalten
3) bei onmouseclick ein großes Bild3 modal über die Seite legen
4) Unabhängig der oben genannten Punkte, frage ich mich ob es möglich ist Bildpfade irgendwo global zu definieren, damit ich bei Veränderungen nicht immer an x verschiedenen Stellen eingreifen muss... (die momentan genutzen Bild-URL sind nur Platzhalter)
Soweit funktioniert der unten angehängte Quellcode, jedoch wäre es schön wenn jemand mit mehr Verständnis einmal darüber schauen könnte und ein paar Tipps/Verbesserungsvorschläge hätte.
Vielen Dank
lg Christian
PS: Per HTML-Block definierter Code im Beitrag erhält automatisch überall URL-Tags, welche den Quellcode unbrauchbar machen. Kann man das irgendwie abstellen?
(Damit das Codebeispiel läuft müssen derzeit sämtliche
[url]
und [/url]
Tags manuell entfernt werden)HTML-Quellcode
- <!DOCTYPE html>
- <html>
- <!--Ist es möglich irgendwo (hier?) meine Bildpfade global vorab in Variablen abzulegen?-->
- <!--var path ="/files/theme/";-->
- <!--var imageThumb="[url]https://www.w3schools.com/images/w3schools_green.jpg[/url]";-->
- <!--var imageHoover="[url]https://www.w3schools.com/css/img_smallflower.jpg[/url]";-->
- <!--var imageModal="[url]https://www.w3schools.com/css/img_chania.jpg[/url]";-->
- <head>
- <style>
- #myImageThumb {cursor: zoom-in}
- /* The Modal (background) */
- .modal {display: none; /* Hidden by default */
- position: fixed; /* Stay in place */
- z-index: 1; /* Sit on top */
- padding-top: 100px; /* Location of the box */
- left: 0;
- top: 0;
- width: 100%; /* Full width */
- height: 100%; /* Full height */
- overflow: auto; /* Enable scroll if needed */
- background-color: rgb(0,0,0); /* Fallback color */
- background-color: rgba(0,0,0,0.7); /* Black w/ opacity */}
- /* Modal Content (image) */
- .modal-content {margin: auto;
- display: block;
- max-width: 768px;
- cursor: zoom-out}
- /* Caption of Modal Image */
- #caption {margin: auto;
- display: block;
- max-width: 768px;
- text-align: left;
- color: #ccc;
- padding: 25px;}
- /* Add Animation */
- .modal-content, #caption {-webkit-animation-name: zoom;
- -webkit-animation-duration: 0.6s;
- animation-name: zoom;
- animation-duration: 0.6s;}
- @-webkit-keyframes zoom {
- from {-webkit-transform:scale(0)} to {-webkit-transform:scale(1)}
- }
- @keyframes zoom {
- from {transform:scale(0)} to {transform:scale(1)}
- }
- /* 90% Image Width on Smaller Screens */
- @media only screen and (max-width: 1024px){
- .modal-content {
- width: 90%;
- }
- }
- </style>
- </head>
- <body> <img id="myImageThumb" src="[url]https://www.w3schools.com/images/w3schools_green.jpg[/url]"
- onmouseenter="this.src='[url]https://www.w3schools.com/css/img_smallflower.jpg[/url]'"
- onmouseleave="this.src='[url]https://www.w3schools.com/images/w3schools_green.jpg[/url]'">
- <!-- The Modal -->
- <div id="myModal" class="modal"> <img class="modal-content" id="myImage">
- <div id="caption">
- <b>PROJECT: </b>Exampleproject<br>
- <b>CONTRACTOR: </b>Examplecontractor<br>
- <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
- commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus
- et magnis dis parturient montes, nascetur ridiculus mus. Donec quam
- felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla
- consequat massa quis enim. Donec pede justo, fringilla vel, aliquet
- nec, vulputate.</p>
- </div>
- </div>
- <script>
- //var path ="/files/theme/";
- var imageThumb="[url]https://www.w3schools.com/images/w3schools_green.jpg[/url]";
- var imageHoover="[url]https://www.w3schools.com/css/img_smallflower.jpg[/url]";
- var imageModal="[url]https://www.w3schools.com/css/img_chania.jpg[/url]";
- // Get the modal
- var modal = document.getElementById('myModal');
- // Get the image and insert it inside the modal
- var img = document.getElementById('myImageThumb');
- var modalImg = document.getElementById("myImage");
- //var captionText = document.getElementById("caption");
- img.onclick = function(){
- myImageThumb.src = imageThumb; //stops myImageThumb animation in the background
- modal.style.display = "block";
- modalImg.src = imageModal;
- }
- // When the user clicks on imageModal, close the modal
- myImage.onclick = function() {
- modal.style.display = "none";
- }
- </script>
- </body>
- </html>
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „cl10k“ ()