peter_bv Posted October 11, 2017 Share Posted October 11, 2017 I have tried to implement multiple sliders on one page. The carousel function now get the respective slider name passed "carousel(slider)". The code is executed correctly, the function is being called by the time and the argument/object is correct. The display block/none property is set but anyway, the image does not change. Tried on IE, Edge, Chrome. What could I have done wrong? <div class="container"> <div class="w3-row"> <div class="w3-third w3-container" align="center"> <img src="http://media.bitronvideo.eu/b-home/bitronvideosito/interno3.png" width="300px"> [maxbutton id="12"] <img class="mySlides1" src="http://media.bitronvideo.eu/b-home/bitronvideosito/de.png"> <img class="mySlides1" src="http://media.bitronvideo.eu/b-home/bitronvideosito/it.png"> <img class="mySlides1" src="http://media.bitronvideo.eu/b-home/bitronvideosito/it.png"> </div> <div class="w3-third w3-container" align="center"> <img src="http://media.bitronvideo.eu/b-home/bitronvideosito/interno2.png" width="300px"> [maxbutton id="7"] <img class="mySlides2" src="http://media.bitronvideo.eu/b-home/bitronvideosito/btouch11.png"> <img class="mySlides2" src="http://media.bitronvideo.eu/b-home/bitronvideosito/tline11.png"> </div> <div class="w3-third w3-container" align="center"> <img src="http://media.bitronvideo.eu/b-home/bitronvideosito/interno1.png" width="300px"> [maxbutton id="11"] <img class="mySlides3" src="http://media.bitronvideo.eu/b-home/bitronvideosito/citofono1.png"> <img class="mySlides3" src="http://media.bitronvideo.eu/b-home/bitronvideosito/tclass1.png"> </div> </div> </div> <!-- chiusura container --> <style> .mySlides1 {display:none;} .mySlides2 {display:none;} .mySlides3 {display:none;} </style> <script type="text/javascript"> function carousel(slider) { var slideIndex = 0; var i; var x = document.getElementsByClassName(slider); for (i = 0; i < x.length; i++) { x[i].style.display = "none"; } slideIndex++; if (slideIndex > x.length) {slideIndex = 1} x[slideIndex-1].style.display = "block"; setTimeout(function(){carousel(slider);}, 2000); // Change image every 2 seconds } carousel("mySlides1"); carousel("mySlides2"); carousel("mySlides3"); </script> Link to comment Share on other sites More sharing options...
dsonesuk Posted October 11, 2017 Share Posted October 11, 2017 The slideIndex will always be 1; When function called var slideIndex = 0; then further on slideIndex++; 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now