var gogo = 0;
function slideShow(){
gogo++;
if(gogo > 2){
gogo = 0;
}
}
function gallery(){
var dd = $('.ts_inner');
var goto = -gogo*606;
dd.animate({left:goto+"px"},1000);
slideShow();
}
-----------------------------------以上代码可以执行动画播放-------------------------------------
var gogo = 0;
var dd = $('.ts_inner');
function slideShow(){
gogo++;
if(gogo > 2){
gogo = 0;
}
}
function gallery(){
var goto = -gogo*606;
dd.animate({left:goto+"px"},1000);
slideShow();
}
-----------------------------------以上动画不播放---------------------------------------------
这是怎么回事啊。我想声明全局的变量,后续代码还要用到的,var goto我也想声明成全局的,但是动画没有执行,也没有报错,用$也没有用
大神们,帮帮我吧jQuery函数动画

解决方案 »

  1.   

    var gogo = 0;
    var dd ="";
    function slideShow(){
    gogo++;
    if(gogo > 2){
    gogo = 0;
    }
    }
    function gallery(){
    var goto = -gogo*606;
    dd = $('.ts_inner');
    dd.animate({left:goto+"px"},1000);
    slideShow();
    }这样试试  可能是元素还没加载呢吧
      

  2.   

    大神,按你说的可以了,我还有个问题:假如我后续还要用到dd这个变量,并且变量的值还是$('.ts_inner'),那么我还用一次一次的在函数中给dd在赋值$('.ts_inner')吗,这有点冗余吧。
      

  3.   


    $(function(){
    var gogo = 0;
    var dd = $('.ts_inner');
    function slideShow(){
    gogo++;
    if(gogo > 2){
    gogo = 0;
    }
    }
    function gallery(){
    var goto = -gogo*606;
    dd.animate({left:goto+"px"},1000);
    slideShow();
    }
    });冒似goto是个保留字,建议LZ换个名字