如果单击链接,则使javascript不运行特定代码

问题描述 投票:0回答:2

您好,如果由于缺乏我的JavaScript知识而不清楚我的问题,我深表歉意。我是一个自学成才的php:er,并决定尝试使用php方法处理javascript。所以这是我的问题:

我想对其中的图片进行幻灯片显示:

1)具有转到下一个/上一个图片的按钮,(有效)

2)每隔X秒自动更改图片,(有效)

3)在预览了整个系列的图片后自动停止更改图片,(有效)

如果按下了下一个/上一个按钮,<< 4将自动停止更改图片。 (无效)

1-3我设法弄清楚了。但是出于超出我可怜的理解之外的原因,我无法做到第四!如果设置了

“ n”变量,我试图设置一个“ lap”变量。我认为这意味着如果按下“下一个/上一个”按钮,则会设置lap,而javascript代码将不会读取showSlides所在的行。无论我尝试了多少种不同的方式,它都没有效果!你能帮我吗?这是我的代码:下面的CSS

/* Slideshow container */ .slideshow-container { position: relative; margin: auto; } /* Next & previous buttons */ .prev, .next { cursor: pointer; position: absolute; width: auto; padding: 16px; margin-top: -22px; color: #595959; font-weight: normal; font-size: 38px; transition: 0.6s ease; user-select: none; } /* Position the "next button" to the right */ .next { top:50px; right: 0; } .prev { top:50px; left: 0; }

下面的HTML

<td class='slideshow-container' valign='top' style='width:50%;padding:3%;text-align:center;'>
    <center>
        <div class='mySlides fade' style='position:relative;'>
        <img src='forsig.JPG' style='width:90%'>
        </div>
        <div class='mySlides fade' style='position:relative;'>
        <img src='grundblocket.JPG' style='width:90%'>
        </div>
        <div class='mySlides fade' style='position:relative;'>
        <img src='kajaky.JPG' style='width:90%'>
        </div>
        <div class='mySlides fade' style='position:relative;'>
        <img src='Rescueshot1.jpg' style='width:90%'>
        </div>
        <div class='mySlides fade' style='position:relative;'>
        <img src='rescueshot2.jpg' style='width:90%'>
        </div>
        <div class='mySlides fade' style='position:relative;'>
        <img src='skoretc.JPG' style='width:90%'>
        </div>
    echo "</center>
    <a class='prev' onclick='plusSlides(-1)'>&#10094;</a>
    <a class='next' onclick='plusSlides(1)'>&#10095;</a>
</td>

以下Javascript:

<script>
var slideIndex = 0;
showSlides();

function plusSlides(n) {
  showSlides(slideIndex += n);
}

function showSlides(n) {
  var i;
  var slides = document.getElementsByClassName("mySlides");
  if (n > slides.length) {slideIndex = 1}  
  if (n < 1) {slideIndex = slides.length}
  for (i = 0; i < slides.length; i++) {
      slides[i].style.display = "none";  
  }
  if (typeof n == 'undefined') {slideIndex++;}
  if (slideIndex > slides.length) {slideIndex = 1} 
  if (slideIndex == slides.length) {var lap = "ye"}
  slides[slideIndex-1].style.display = "block";  
  if (typeof lap == 'undefined') {
     if (typeof n == 'undefined') {setTimeout(showSlides, 5000);}
  }
}
</script>

您好,如果由于缺乏我的JavaScript知识而不清楚我的问题,我深表歉意。我是一个自学成才的php:er,并决定尝试使用php方法处理javascript。所以这是我的问题:我想...

javascript button slideshow
2个回答
0
投票

0
投票
© www.soinside.com 2019 - 2024. All rights reserved.