javascript - jQuery 单循环图像循环

标签 javascript jquery

到目前为止,我有以下 jQuery,我对它很陌生,我试图在透明框架内循环一幅画的 22 个图像,但停在最后一个上。我正在使用以下 jQuery 代码:

function swapImages(){
  var $active = jQuery('#frame-gallery .active');
  var $next = ($active.next().length > 0) ? $active.next() : jQuery('#frame-gallery img:first');
  $active.removeClass('active');
  $next.addClass('active');
}
jQuery(document).ready($startSwap = function(){
  // Run our swapImages() function every 5secs
  setInterval('swapImages()', 120);
});

我一整天都在这个地方,尝试了clearInterval的各种地方,但它不起作用......

最佳答案

只需稍微更改一下 $next 的逻辑——仅在下一个节点存在时添加/删除类。如果 next 不存在则清除间隔:

var interval;

function swapImages(){
  var $active = jQuery('#frame-gallery .active');
  
  if ($active.next().length > 0) {
    $active.removeClass('active');
    $active.next().addClass('active');
  } else {
    clearInterval(interval);
  }
}

jQuery(document).ready($startSwap = function(){
  // Run our swapImages() function every 5secs
  interval = setInterval(swapImages, 300);
});
.active { color: red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id="frame-gallery">
  <li class="active">a</li>
  <li>b</li>
  <li>c</li>
  <li>d</li>
  <li>e</li>
  <li>f</li>
  <li>g</li>
</ul>

关于javascript - jQuery 单循环图像循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36804976/

相关文章:

jquery - 使用 jQuery 访问 html anchor 的子元素

javascript - 当 jquery 中的 ajax 调用完成时,如何运行一些代码?

jquery - 我可以使用 Jquery Mobile 获取平板电脑的当前 GPS 位置吗?

javascript - Jquery每个函数,计算重复项

javascript - 如何在更新数据库记录时使用 $watch 查看更改

javascript - 使用箭头键更改按钮的焦点

javascript - WebUsb 上的速度 1.2 mb/秒正常吗?

javascript - 如何修复 "TypeError: Cannot read properties of undefined (reading ' useSystemColorMode')"

javascript - 如何将两个 Canvas 居中放置在另一个 Canvas 之上?

javascript - 使用javascript根据查询字符串替换链接的自定义ID