これが私のコードです。「よく」効きます。しかし、しばらくループすると、ページがクラッシュします。また、ボタンがクリックされたときにループを停止する方法も考えられません。何か案は?
クラッシュするため、jsfiddle のデモを提供できません。
JavaScript:
$(document).ready(function () {
var stop = false;
function ivSlider($element, $continue) {
var current = $element.find('.current');
var next = current.next();
if (next.length == 0) next = $element.find(">:first-child");
setInterval(function () {
current.removeClass('current');
next.addClass('current');
if ($continue === true) ivSlider($element, true);
}, 4000);
}
ivSlider($('.slider'), true);
});
CSS:
.slider li {
display: none;
float: left;
padding-right: 10px;
}
.current {
display: block!important;
}
HTML:
<ul class="slider">
<li class="current">Slide 1</li>
<li>Slide 2</li>
</ul>