Jquery Cycle activeClass仅在单击导航后才起作用

时间:2011-10-14 14:13:53

标签: jquery html css jquery-plugins cycle

已更新 - 已添加onAfter功能

我对周期有一个奇怪的问题。

我遇到的问题是,“activeSlide”类在您单击之前不会附加到寻呼机按钮。单击寻呼机项目时工作正常,但在页面加载时,当滑块开始滚动时,它将保留在第一个寻呼机项目上。

这是我的jquery:

$(document).ready(function() {

$('.slideshow').cycle({
            fx: 'scrollHorz',
            timeout: 4000,
            pause: 1,
            pager: '#nav_slide',
            prev:   '#prev_btn', 
            next:   '#next_btn',

            after:   onAfter,

            pagerAnchorBuilder: paginate


        });

});


                        function paginate(idx, el)


  {
    return '<div class="slide' + idx + '"></div>';
}


                    function onAfter() { 

var hasClass = $(".slide3").hasClass("activeSlide");
var hasTheClass = $(".slide0").hasClass("activeSlide");

if(hasClass == true) {
    $("#nav_slide").animate({"left": "-=226px"}, "fast");
}else if(hasTheClass == true) {
    $("#nav_slide").animate({"left": "0px"}, "fast");
}

}

有什么想法吗?我已经被困了一段时间了!

提前致谢。

1 个答案:

答案 0 :(得分:0)

问题陈述中的细微澄清会有所帮助

1)您是否遇到“导航按钮”或“寻呼机按钮”问题? 2)什么是“activeClass”。你的意思是“activeSlide”被附加到寻呼机(1,2,3 ..)元素?
3)请粘贴HTML&amp; CSS,如果这些是相关的。

PS:由于寻呼机元素是幻灯片的链接,我建议使用&lt; a&gt;而不是&lt; div&gt;标签

function paginate(idx, el) {
                return '<a href="#">'+ (idx + 1) +'</a>';
            }