Coś mi nie wychodzi, otwiera mi ciągle ten sam obrazek
Zeby nie rozbudowywać funkcji bo mam tych obrazków ponad 20
Może jest jakoś prostrzy sposób?
Mam 20 zdjęć i chcę żeby wyświetlane były na stronie a po kliknięciu na każde otwierało mi zdęcie w nowym przyciemnionym DIVie
<style> .dropdown { float: left; overflow: hidden; cursor: pointer; } .dropdown-content { display: none; background-color: #f9f9f9; min-width: 160px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); position: fixed; margin-top: 3.0em; z-index: 2; } .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } a:hover, .dropdown:hover { background-color: #acc; color: black; cursor: pointer; } .show { display: block; } </style> </head> <a onclick="myFunction()" class="dropbtn">kliknij1 </a> <div id="myDropdown" class="dropdown-content"> <img src="10.jpg" width="300"> <a href="#" class="tablinks">[zamknij]</a> </div> <a onclick="myFunction()" class="dropbtn"> kliknij2</a> <div id="myDropdown" class="dropdown-content"> <img src="11.jpg" width="300"> <a href="#" class="tablinks">[zamknij]</a> </div> <a onclick="myFunction()" class="dropbtn"> kliknij3</a> <div id="myDropdown" class="dropdown-content"> <img src="12.jpg" width="300"> <a href="#" class="tablinks">[zamknij]</a> </div> <script> function myFunction() { document.getElementById("myDropdown").classList.toggle("show"); } window.onclick = function(event) { if (!event.target.matches('.dropbtn')) { var dropdowns = document.getElementsByClassName("dropdown-content"); var i; for (i = 0; i < dropdowns.length; i++) { var openDropdown = dropdowns[i]; if (openDropdown.classList.contains('show')) { openDropdown.classList.remove('show'); } } } } </script>
Zrobiłem jeszcze jak ponzej ale czy da się to jakoś uprościc dla wielu obrazków?
<html> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> .w3-container,.w3-panel{padding:0.01em 16px} .w3-button{border:none;display:inline-block;padding:8px 16px;vertical-align:middle;overflow:hidden;text-decoration:none;color:inherit;background-color:inherit;text-align:center;cursor:pointer;white-space:nowrap} .w3-display-topright{position:absolute;right:0;top:0} .w3-modal{z-index:3;display:none;padding-top:100px;position:fixed;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4)} .w3-modal-content{margin:auto;background-color:#fff;position:relative;padding:0;outline:0;width:600px} </style> <body> <div class="w3-container"> <button onclick="document.getElementById('id01').style.display='block'" class="w3-button w3-black"><img src="01.jpg" width="100"></button> <button onclick="document.getElementById('id02').style.display='block'" class="w3-button w3-black"><img src="02.jpg" width="100"></button> <div id="id01" class="w3-modal"> <div class="w3-modal-content"> <div class="w3-container"> <span onclick="document.getElementById('id01').style.display='none'" class="w3-button w3-display-topright">×</span> <p><img src="01.jpg" width="100%"></p> <p></p> </div> </div> </div> <div id="id02" class="w3-modal"> <div class="w3-modal-content"> <div class="w3-container"> <span onclick="document.getElementById('id02').style.display='none'" class="w3-button w3-display-topright">×</span> <p><img src="02.jpg" width="100%"></p> </div> </div> </div> </div> </body> </html>