36

左右のナビゲーションボタンを使用せずに、初心者向けの簡単なjquery画像スライドショーチュートリアル(プラグインなし)はどこにありますか?

ありがとうございました。

4

4 に答える 4

51

これは、私がネット上で見つけた最も簡単な例です。 http://jonraasch.com/blog/a-simple-jquery-slideshow

例を要約すると、これはスライドショーを行うために必要なものです:

HTML:

<div id="slideshow">
    <img src="img1.jpg" style="position:absolute;" class="active" />
    <img src="img2.jpg" style="position:absolute;" />
    <img src="img3.jpg" style="position:absolute;" />
</div>

絶対位置は、各画像を他の画像の上に配置するために使用されます。

CSS

<style type="text/css">
    .active{
        z-index:99;
    }
</style>

class="active" を持つ画像が他の画像の上に表示され、class=active プロパティは次のJqueryコードで変更されます。

<script>
    function slideSwitch() {
        var $active = $('div#slideshow IMG.active');
        var $next = $active.next();    

        $next.addClass('active');

        $active.removeClass('active');
    }

    $(function() {
        setInterval( "slideSwitch()", 5000 );
    });
</script>

スライドショーをさらに進めたい場合は、上記のリンク (アニメーション化された不透明度の変更 - 2n の例) または他のより複雑なスライドショーのチュートリアルを参照することをお勧めします。

于 2013-05-21T22:15:47.140 に答える
5

これは、Michael Soriano のチュートリアルを私が翻案したものです。以下またはJSBinを参照してください。

$(function() {
  var theImage = $('ul#ss li img');
  var theWidth = theImage.width();
  //wrap into mother div
  $('ul#ss').wrap('<div id="mother" />');
  //assign height width and overflow hidden to mother
  $('#mother').css({
    width: function() {
      return theWidth;
    },
    height: function() {
      return theImage.height();
    },
    position: 'relative',
    overflow: 'hidden'
  });
  //get total of image sizes and set as width for ul 
  var totalWidth = theImage.length * theWidth;
  $('ul').css({
    width: function() {
      return totalWidth;
    }
  });

  var ss_timer = setInterval(function() {
    ss_next();
  }, 3000);

  function ss_next() {
    var a = $(".active");
    a.removeClass('active');

    if (a.hasClass('last')) {
      //last element -- loop
      a.parent('ul').animate({
        "margin-left": (0)
      }, 1000);
      a.siblings(":first").addClass('active');
    } else {
      a.parent('ul').animate({
        "margin-left": (-(a.index() + 1) * theWidth)
      }, 1000);
      a.next().addClass('active');
    }
  }

  // Cancel slideshow and move next manually on click
  $('ul#ss li img').on('click', function() {
    clearInterval(ss_timer);
    ss_next();
  });

});
* {
  margin: 0;
  padding: 0;
}
#ss {
  list-style: none;
}
#ss li {
  float: left;
}
#ss img {
  width: 200px;
  height: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<ul id="ss">
  <li class="active">
    <img src="http://leemark.github.io/better-simple-slideshow/demo/img/colorado-colors.jpg">
  </li>
  <li>
    <img src="http://leemark.github.io/better-simple-slideshow/demo/img/monte-vista.jpg">
  </li>
  <li class="last">
    <img src="http://leemark.github.io/better-simple-slideshow/demo/img/colorado.jpg">
  </li>
</ul>

于 2013-04-03T23:43:15.320 に答える
3

これはあなたが興味を持っているもののように見えます

http://www.designchemical.com/blog/index.php/jquery/jquery-image-swap-gallery/

于 2012-08-22T08:07:15.127 に答える