【发布时间】:2019-05-27 07:58:00
【问题描述】:
从“https://www.w3schools.com/howto/howto_js_slideshow.asp”修改:
var slideIndex = 1;
showSlides(slideIndex);
function plusSlides(n) {
showSlides(slideIndex += n);
}
function currentSlide(n) {
showSlides(slideIndex = n);
}
function showSlides(n) {
var i;
var slides = document.getElementsByClassName('mySlides');
var dots = document.getElementsByClassName('dot');
if (n > slides.length) {slideIndex = 1}
if (n < 1) {slideIndex = slides.length}
for (i = 0; i < slides.length; i++) {
slides[i].style.display = 'none';
}
for (i = 0; i < dots.length; i++) {
dots[i].className = dots[i].className.replace(' active', '');
}
slides[slideIndex-1].style.display = 'block';
dots[slideIndex-1].className += ' active';
}
我从 php 调用这些函数,如下所示:
for($j=0; $j < 2; $j++) {
for($i=0; $i < 10; $i++) {
echo "<div>
<!-- Next and previous buttons -->
<a class="prev" onclick="plusSlides(-1)">❮</a>
<a class="next" onclick="plusSlides(1)">❯</a>
</div>";
}
}
我想将上面的代码修改为下面不适合我的代码:
for($j=0; $j < 2; $j++) {
for($i=0; $i < 10; $i++) {
echo "<div>
<!-- Next and previous buttons -->
<a class="prev" onclick="plusSlides_".$i."(-1)">❮</a>
<a class="next" onclick="plusSlides_".$i."(1)">❯</a>
</div>";
}
}
我想要 2 个单独的滑块,每个滑块有 10 个图像,并且两个滑块都有单独的控件。
我怎样才能使上面的代码工作? 我应该修改什么?
我尝试使用以下方法调用函数:
window["plusSlides".concat("_",$i)](slideIndex);
以及以下定义函数:
window["plusSlides".concat("_",$i)] = function(n) {}
还有 eval 函数,但这些对我不起作用。
【问题讨论】:
-
欢迎。 “我想将上面的代码修改为下面对我不起作用的代码:”
-
逻辑上,我需要它来修改代码。我可以更改引号以使其正常工作。
标签: javascript php html loops slideshow