weixin_40253609 2017-09-15 04:36 采纳率: 0%
浏览 3889

jq中,点击事件触发前移除定时器,等点击完20秒后怎么才能继续执行定时器内容,做的是一个轮播图

var indexed = 0;
var mySetInt;
var timeSetInt;
$("#bannerDiv ul li:eq(0)").css({"background-image": "url(imgs/banner_01.jpg)","z-index": "1"});
$("#bannerDiv ul li:eq(1)").css("background-image", "url(imgs/banner02.jpg)");
$("#bannerDiv ul li:eq(2)").css("background-image", "url(imgs/banner03.jpg)");

mySetInt = setInterval(mySetIntFun, 5000);
timeSetInt = 

function mySetIntFun() {
    if(indexed >= 2) {
        var index = 0;
    } else {
        var index = indexed + 1;
    }

    $("#bannerDiv ol li").eq(index).attr("class", "clickLi").siblings().removeAttr("class");
    $("#bannerDiv ul li").eq(index).css({"left": "1920px","z-index": "2"}).animate({"left": "0px"}, 1000);
    $("#bannerDiv ul li").eq(index).siblings().css("z-index", "0");
    $("#bannerDiv ul li").eq(indexed).css("z-index", "1");

    indexed = index;
}

$("#bannerDiv ol li").click(function() {
    clearInterval(mySetInt);

    var index = $(this).index();

    if(index != indexed) {

// clearInterval(mySetInt01);
$(this).attr("class", "clickLi").siblings().removeAttr("class");
$("#bannerDiv ul li").eq(index).css({"z-index": "2"}).animate({"left": "0px"}, 1000);
$("#bannerDiv ul li").eq(index).siblings().css("z-index", "0");
$("#bannerDiv ul li").eq(indexed).css("z-index", "1");

        indexed = index;

    } else {};

    var mySetInt01;
    mySetInt01 = setInterval(mySetIntFun01, 5000);

    function mySetIntFun01() {
        if(indexed >= 2) {
            var index = 0;
        } else {
            var index = indexed + 1;
        }

        $("#bannerDiv ol li").eq(index).attr("class", "clickLi").siblings().removeAttr("class");
        $("#bannerDiv ul li").eq(index).css({
            "left": "1920px",
            "z-index": "2"
        }).animate({
            "left": "0px"
        }, 1000);
        $("#bannerDiv ul li").eq(index).siblings().css("z-index", "0");
        $("#bannerDiv ul li").eq(indexed).css("z-index", "1");

        indexed = index;
    }

});



我在click事件里写了个新的定时器,但是每次触发click事件都会执行后面的定时器,到后面就会发生混乱,求大神指导,该怎么改才对
  • 写回答

6条回答

  • 算不算码农 2017-09-15 05:30
    关注

    这个逻辑不应该是这样吗

    click 移除 轮播计时器

    setTimout(function(){( 添加轮播计时器 )},20000)

    评论

报告相同问题?

悬赏问题

  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 关于#r语言#的问题:差异分析前数据准备,报错Error in data[, sampleName1] : subscript out of bounds请问怎么解决呀以下是全部代码:
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)