JQUERY的TAB标签,我想实现5秒钟自动切换的效果,怎么做
代码太多,已放到网盘。想5秒钟切换到下一个栏目,这样循环。http://pan.baidu.com/s/1kT42uk3...
代码太多,已放到网盘。 想5秒钟切换到下一个栏目,这样循环。
http://pan.baidu.com/s/1kT42uk3 展开
http://pan.baidu.com/s/1kT42uk3 展开
4个回答
展开全部
下面这段代码替换你原来的js代码,亲测可用……
原理:
1.设置了一个定时器,每2秒触发。
2.如果用户自己切换,停止定时器。当用户鼠标离开区域时,再次进入定时切换。
不懂再问~
$(function(){
var i=0;//初始记录用户鼠标经过是第几个li
var canmove=true;
$('.menu li').mouseenter(function(){
canmove=false;
clearInterval(li_timer);
i=$(this).index();
$(this).addClass('off').siblings().removeClass('off');
$('.menudiv div').hide();
$('.menudiv div').eq(i).show();
});
$("#tab1").mouseenter(function(){//只要用户鼠标在这个tab1区域内,就不自动跳转
canmove=false;
}).mouseleave(function(){
clearInterval(li_timer);
setTimeout(function(){canmove=true;},2000);//两秒后自动切换
});
function li_timer(){
if(canmove){
i++;
if(i==$('.menu li').length){
i=0;
}
$('.menu li').eq(i).addClass('off').siblings().removeClass('off');
$('.menudiv div').hide();
$('.menudiv div').eq(i).show();
}
}
setInterval(li_timer,2000);//每两秒切换
});
展开全部
<script>
var index = 0;
$(function(){
var timer = setInterval(rotate,2000);
$('.menu li').mouseover(function(){
clearInterval(timer);
$(this).addClass('off').siblings().removeClass('off');
$('.menudiv div').hide();
$('.menudiv div').eq($(this).index()).show();
});
$('.menu li').mouseout(function(){
timer = setInterval(rotate,2000);
});
});
function rotate()
{
var lis = $(".menu li");
$(lis[index]).addClass('off').siblings().removeClass('off');
$('.menudiv div').hide();
$('.menudiv div').eq(index).show();
if(++index == lis.length)
{index =0;}
}
</script>
实现了,但是代码写的不好
var index = 0;
$(function(){
var timer = setInterval(rotate,2000);
$('.menu li').mouseover(function(){
clearInterval(timer);
$(this).addClass('off').siblings().removeClass('off');
$('.menudiv div').hide();
$('.menudiv div').eq($(this).index()).show();
});
$('.menu li').mouseout(function(){
timer = setInterval(rotate,2000);
});
});
function rotate()
{
var lis = $(".menu li");
$(lis[index]).addClass('off').siblings().removeClass('off');
$('.menudiv div').hide();
$('.menudiv div').eq(index).show();
if(++index == lis.length)
{index =0;}
}
</script>
实现了,但是代码写的不好
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置一个定时器, 每5秒钟执行一次你的tab切换事件..
追问
我初学,就是这个不知道,才问的。能写下简单的代码吗,谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var a = 1;
alert(a);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |