繁体   English   中英

如何在我的Jquery滑块中使这个子弹导航工作?

[英]How do I make this bullet navigation work in my Jquery slider?

我有一个由ul li组成的jquery滑块,左边有滑块,我有一个很好的工作下一个和上一个按钮,但现在我想添加一个子弹导航。

我对Jquery并不擅长,我想制作一个点击功能,点击<a id="view1">它滑到<li id="slide1"> ,当你点击<a id="view2">它滑到<li id="slide2">等等所以我想知道有谁知道如何写这个点击功能

我以为我能做到但是3-4个小时后我仍然找不到好办法。 如果这是一个愚蠢/无意义的问题,我道歉。

这是我的HTML:

    <div id="slider">
    <ul>
        <li id="slide1"></li>
        <li id="slide2"></li>
        <li id="slide3"></li>
        <li id="slide4"></li>
        <li id="slide5"></li>
    </ul>
    <div class="navigatie">
        <a id="vorige"><img src="prev.jpg"></a>
        <a id="volgende"><img src="next.jpg"></a>
    </div>
</div>
<div id="overview">
     <ul id="ulBullet">
        <li class="bullet1"><a id="view1"></a></li>
        <li class="bullet2"><a id="view1"></a></li>
        <li class="bullet3"><a id="view1"></a></li>
        <li class="bullet4"><a id="view1"></a></li>
        <li class="bullet5"><a id="view1"></a></li>
     </ul>   
</div>

这是我的jquery代码:

$(document).ready(function(){
var slides = $('#slider ul li');
var slideAantal = slides.length;
var slideBreedte = 1280;
var slideHuidig = 0;

$('#slider ul').css('width', slideAantal * slideBreedte);

$('.navigatie a').click(function() {
    if ($(this).attr('id') == 'volgende') {
        slideHuidig = slideHuidig + 1;
    }
    else {
        slideHuidig = slideHuidig - 1;
    }

    navigatie(slideHuidig);

    $('#slider ul').animate({
        'marginLeft' : (-slideHuidig * slideBreedte)
        });
});

不知道如何使用你的“navigatie”函数,因为你没有给它的来源(认为它与处理“越界”索引有关)?但你似乎在你的id中使用数字索引。

假设你的id是view1,view2,view3等......你应该能够从这些id中删除字母字符,以便只获取数字部分并将其用作幻灯片索引:

$('#overview ul#ulBullet li').on('click', function() {
    var dest_index = $(this).find('a')[0].id;
    dest_index = ~~dest_index.replace("view", "");
    slideHuidig = dest_index - 1;

    $('#slider ul').animate({
        'marginLeft' : (-slideHuidig * slideBreedte)
    });
});

它并没有真正滑到“slideX”而是滑到Xth幻灯片。

我找到了一个解决方案,但它可能是坏方法,但添加此点击功能使其工作完美,这对我来说最重要!

随意使它更短或更好。

$('.bullet1').click(function(){
            $('#slider ul').animate({
            'marginLeft' : (0)//
        })
            slideHuidig = slideHuidig - slideHuidig;
            $('#vorige').addClass("disableClick");
            $('#volgende').removeClass("disableClick");
            $('#vorige').fadeTo( "slow" , 0.2);
            $('#volgende').fadeTo( "slow" , 0.7);

        $('.bullet1').css("background","#FF0000");
        $('.bullet2').css("background","#ccc");
        $('.bullet3').css("background","#ccc");
        $('.bullet4').css("background","#ccc");
        $('.bullet5').css("background","#ccc");


});

$('.bullet2').click(function(){
            $('#slider ul').animate({
            'marginLeft' : (-1 * slideBreedte)//
        })
            slideHuidig = 1;
            $('#vorige').removeClass("disableClick");
            $('#volgende').removeClass("disableClick");
            $('#vorige').css( "opacity" ,0.7);
            $('#volgende').css( "opacity" , 0.7);

        $('.bullet1').css("background","#ccc");
        $('.bullet2').css("background","#FF0000");
        $('.bullet3').css("background","#ccc");
        $('.bullet4').css("background","#ccc");
        $('.bullet5').css("background","#ccc");


});

$('.bullet3').click(function(){
            $('#slider ul').animate({
            'marginLeft' : (-2 * slideBreedte)//
        })
            slideHuidig = 2;
            $('#vorige').removeClass("disableClick");
            $('#volgende').removeClass("disableClick");
            $('#vorige').css( "opacity" ,0.7);
            $('#volgende').css( "opacity" , 0.7);

        $('.bullet1').css("background","#ccc");
        $('.bullet2').css("background","#ccc");
        $('.bullet3').css("background","#FF0000");
        $('.bullet4').css("background","#ccc");
        $('.bullet5').css("background","#ccc");

});

$('.bullet4').click(function(){
            $('#slider ul').animate({
            'marginLeft' : (-3 * slideBreedte)//
        })
            slideHuidig = 3;
            $('#vorige').removeClass("disableClick");
            $('#volgende').removeClass("disableClick");
            $('#vorige').css( "opacity" ,0.7);
            $('#volgende').css( "opacity" , 0.7);

        $('.bullet1').css("background","#ccc");
        $('.bullet2').css("background","#ccc");
        $('.bullet3').css("background","#ccc");
        $('.bullet4').css("background","#FF0000");
        $('.bullet5').css("background","#ccc");

});

$('.bullet5').click(function(){
            $('#slider ul').animate({
            'marginLeft' : (-4 * slideBreedte)//
        })
            slideHuidig = 4;
            $('#vorige').removeClass("disableClick");
            $('#volgende').addClass("disableClick");
            $('#vorige').css( "opacity" ,0.7);
            $('#volgende').css( "opacity" , "0.2");

        $('.bullet1').css("background","#ccc");
        $('.bullet2').css("background","#ccc");
        $('.bullet3').css("background","#ccc");
        $('.bullet4').css("background","#ccc");
        $('.bullet5').css("background","#FF0000");

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM