1

1つのページに2つのスライドショー(cems.uwe.ac.uk/~s3-gupta/starterpack/wireless.php )があります。1つは「Eduroamwith Windows」リンクの下にあり、もう1つは「EduroamonMac」リンクの下にあります。2番目(mac)は機能しません。代わりに、最初のスライドショーの最後に画像をロードします。このページやその他のスライドショーをさらにいくつか掲載する必要があります。スライドショーをページ上の複数のインスタンスで個別に機能させる方法はありますか?複数の個別のスライドショーを作成できますか?

jsfiddleはここにあります:http://jsfiddle.net/bud7u/

Javascript:

    $(document).ready(function(){
        var currentPosition = 0;
        var slideWidth = 560;
        var slides = $('.slide');
        var numberOfSlides = slides.length;

        // Remove scrollbar 
        $('#slidesContainer').css('overflow', 'hidden');

        // Wrap all .slides with #slideInner div
         slides
            .wrapAll('<div id="slideInner"></div>')
            // Float left to display horizontally, readjust .slides width
            .css({
            'float' : 'left',
            'width' : slideWidth
         });

        // Set #slideInner width equal to total width of all slides
         $('#slideInner').css('width', slideWidth * numberOfSlides);

        // Insert controls in the DOM
         $('#slideshow')
          .prepend('<span class="control" id="leftControl">Clicking moves left</span>')
          .append('<span class="control" id="rightControl">Clicking moves right</span>');

        // Hide left arrow control on first load
        manageControls(currentPosition);

      // Create event listeners for .controls clicks
      $('.control')
        .bind('click', function(){
        // Determine new position
        currentPosition = ($(this).attr('id')=='rightControl') ? currentPosition+1 : currentPosition-1;

        // Hide / show controls
         manageControls(currentPosition);
        // Move slideInner using margin-left
        $('#slideInner').animate({
        'marginLeft' : slideWidth*(-currentPosition)
        });
    });

     // manageControls: Hides and Shows controls depending on currentPosition
     function manageControls(position){
    // Hide left arrow if position is first slide
    if(position==0){ $('#leftControl').hide() } else{ $('#leftControl').show() }
    // Hide right arrow if position is last slide
     if(position==numberOfSlides-1){ $('#rightControl').hide() } else{ $('#rightControl').show() }
     }  
    });
</script>
4

0 に答える 0