挑战1:使用jQuery生成水平图片幻灯效果

在http://www.gbtags.com/gb/gbtutorials/478.htm发现的:


<!doctype html>
<html>
  <head>
    <style type="text/css">

      .slider {
        width: 542px;
        overflow: hidden;
      }

      .slider ul {
        width: 10000px;
        list-style: none;
        padding: 0;
        margin: 0;
      }

      .slider li {
        display: inline-block;
        float: left;
      }
    </style>
  </head>
  <body>
    <div class="slider">
      <ul>
        <li><img src="http://www.gbtags.com/gb/networks/uploads/afb73f09-8334-46b2-ad66-4abeb7c67a0a/images/gbtags1.jpg" alt="image"></li>
        <li><img src="http://www.gbtags.com/gb/networks/uploads/afb73f09-8334-46b2-ad66-4abeb7c67a0a/images/gbtags2.jpg" alt="image"></li>
        <li><img src="http://www.gbtags.com/gb/networks/uploads/afb73f09-8334-46b2-ad66-4abeb7c67a0a/images/gbtags3.jpg" alt="image"></li>
        <li><img src="http://www.gbtags.com/gb/networks/uploads/afb73f09-8334-46b2-ad66-4abeb7c67a0a/images/gbtags4.jpg" alt="image"></li>
      </ul>
    </div>
     
    <div id="slider-nav">
      <button data-direction="prev"> « 上一个</button>
      <button data-direction="next">下一个 »</button>
    </div>
    <script type='text/javascript' src="http://cdn.gbtags.com/jquery/2.1.1/jquery.min.js"></script>
    <script type="text/javascript">
      (function(){
        var Slider = function(){
          var imageWidth = $(".slider img:eq(0)").width();
          var imageLength = $(".slider img").size();
          var $slider = $(".slider ul");
          var index = 0;

          var slideImage = function(index){
            var margin = -1 * imageWidth * index;
            $slider.animate({"margin-left": margin});
          }

          this.prev = function(){
            if(index == 0) {
              index = imageLength;
            }

            slideImage(--index);
          }

          this.next = function(){
            if(index + 1 == imageLength) {
              index = -1;
            }

            slideImage(++index)
          }
        };

        var slider = new Slider();

        $("#slider-nav button").click(function(){
          if($(this).data("direction") == "prev") {
            slider.prev();
          } else {
            slider.next();
          }
        });
      })(jQuery);
    </script>
  </body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值