0

テキスト ナビゲーションによって制御される画像スライダーがあります。相対的なスライドがギャラリーで最新の場合、テキストはオレンジ色で強調表示されます。他のテキストを黒の背景で非アクティブな状態にしたいのですが、これを機能させることができません!

(それがあまり意味をなさない場合に備えて!基本的に、現在の場合は背景色のオレンジ、非アクティブな場合の背景色は黒が必要です。)ありがとうございます。

$(document).ready(function(){   
    $('.slider').each(function(e){
        if(e == 0){
            $(this).addClass('current');
        }
         $(this).attr('id', 'handle' + e);
    })

    $('.tabs li').each(function(e){
        if(e == 0){
            $(this).addClass('current'); //adds class current to 1st li
        }
        $(this).wrapInner('<a class="title"></a>'); //wraps list items in anchor tag                
        $(this).children('a').attr('href', '#handle' + e);//adds href to the anchors    
        t = $(this).children('a').text(); 
        $('#handle' + e).append('<h2>' + t + '</h2>'); //adds h2 and text to big images 

    })

    $('.tabs li a').click(function(){
        c = $(this).attr('href');       
        if($(c).hasClass('current')){
            return false;
        }else{
            showImage($(c), 20);
            $('.tabs li').removeClass('current');
            $(this).parent().addClass('current');
            return false;
        }           
    })

    runRotateImages();

    $("#featured").hover(
        function(){                 
            clearTimeout(xx);
        }, 
        function(){                 
            runRotateImages();
        }
    )



})

function showImage(img, duration){       

    $('.slider').removeClass('current').css({
            "opacity" : 0.0, 
            "zIndex" : 2
            });
    img.animate({opacity:1.0}, duration, function(){        
        $(this).addClass('current').css({zIndex:1});
    });  

}
function rotateImages(){

    var curPhoto = $("div.current");
    var nxtPhoto = curPhoto.next();     
    var curTab = $(".tabs li.current");
    var nxtTab = curTab.next();             

    if (nxtPhoto.length == 0) {
        nxtPhoto = $('#featured div:first');    
        nxtTab = $('.tabs li:first-child');         
    }                   

    curTab.removeClass('current');
    nxtTab.addClass('current');
    showImage(nxtPhoto, 300);

}
function runRotateImages(){

    xx = setInterval("rotateImages()", 5000);

}

jsfiddle を追加しました - http://jsfiddle.net/n5EPM/3/

ただし、jsfiddle では、画像を自動的に循環するようには見えません。理由はわかりませんが、ブラウザで問題はありません。

4

1 に答える 1