我对Jquery并不大,并且在这里有一个情况;
如何在这个滑动的caroussel中进行自动播放?
旋转木马正在添加一个"当前"类到一个显示在顶部的li,而非" current"李被隐藏了;
我拍摄的原始剧本from here。
按照代码
function slide() {
var li = $("ul#latest-news-slider li.active");
if (li.next().length > 0) {
li.removeClass("active", 3000, "easeInBack");
li.next().addClass("active", 3000, "easeInBack");
} else if (li.prev().length > 0) {
li.removeClass("active", 3000, "easeInBack");
$("ul#latest-news-slider li")
.first("li")
.addClass("active", 3000, "easeInBack");
} else {
return;
}
}
$(".next").click(function() {
var li = $("ul#latest-news-slider li.active");
if (li.next().length > 0) {
li.removeClass("active", 100, "easeInBack");
li.next().addClass("active", 100, "easeInBack");
} else {
li.removeClass("active", 100, "easeInBack");
$("ul#latest-news-slider li")
.first("li")
.addClass("active", 100, "easeInBack");
}
});
$(".prev").click(function() {
var li = $("ul#latest-news-slider li.active");
if (li.prev().length > 0 && li.prev().is("li")) {
li.removeClass("active", 100, "easeInBack");
li.prev().addClass("active", 100, "easeInBack");
} else {
}
});
非常感谢
答案 0 :(得分:1)
我非常感谢你的努力,但我没有资格获得它;
function slide(){
var li=$('ul#latest-news-slider li.active');
if(li.next().length>0 )
{
li.removeClass('active', 3000, "easeInBack");
li.next().addClass('active', 3000, "easeInBack");
}else if(li.prev().length>0){
li.removeClass('active', 3000, "easeInBack");
$('ul#latest-news-slider li').first('li').addClass('active', 3000, "easeInBack");
}else
{
return;
}
}
$('.next').click(function(){
var li=$('ul#latest-news-slider li.active');
if(li.next().length>0 )
{
li.removeClass('active', 100, "easeInBack");
li.next().addClass('active', 100, "easeInBack");
}else {
li.removeClass('active', 100, "easeInBack");
$('ul#latest-news-slider li').first('li').addClass('active', 100, "easeInBack");
}
});
$('.prev').click(function(){
var li=$('ul#latest-news-slider li.active');
if(li.prev().length>0 && li.prev().is("li"))
{
li.removeClass('active', 100, "easeInBack");
li.prev().addClass('active', 100, "easeInBack");
}else {
}
});
答案 1 :(得分:0)
不确定如何准确实现此功能,但您可以使用setInterval。
var interval;
$("#start").on("click", function(){
StartThis(1000);
});
$("#stop").on("click", function(){
StopThis(1000);
});
// speed in miliseconds (1s)
function StartThis(speed){
interval = setInterval(function(){
Next();
}, speed);
}
// stop the movement
function StopThis(){
clearInterval(interval);
}
function Next (){
console.log("do the next funciton");
/*
var li=$('ul#latest-news-slider li.active');
if(li.next().length>0 )
{
li.removeClass('active', 100, "easeInBack");
li.next().addClass('active', 100, "easeInBack");
}else {
li.removeClass('active', 100, "easeInBack");
$('ul#latest-news-slider li').first('li').addClass('active', 100, "easeInBack");
}
*/
}
StartThis(1000);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="start">START</button>
<button id="stop">STOP</button>
&#13;