목차
图片标题3
웹 프론트엔드 HTML 튜토리얼 Bootstrap_Javascript_图片轮播_html/css_WEB-ITnose

Bootstrap_Javascript_图片轮播_html/css_WEB-ITnose

Jun 24, 2016 am 11:32 AM

一 . 结构分析

一个轮播图片主要包括三个部分:

  ☑ 轮播的图片

  ☑ 轮播图片的计数器

  ☑ 轮播图片的控制器

 

  第一步:设计轮播图片的容器。在 Bootstrap 框架中采用 carousel 样式,并且给这个容器定义一个 ID 值,方便后面采用 data 属性来声明触发。

<div id="slidershow" class="carousel"></div>
로그인 후 복사

  第二步:设计轮播图片计数器。在容器 div.carousel 的内部添加轮播图片计算器,采用 carousel-indicators 样式,其主要功能是显示当前图片的播放顺序(有几张图片就放置几个li),一般采用有顺列表来制作:

<div id="slidershow" class="carousel"><!-- 设置图片轮播的顺序 -->    <ol class="carousel-indicators">        <li class="active">1</li>        <li>2</li>        <li>3</li>        <li>4</li>        <li>5</li></ol></div>
로그인 후 복사

  第三步:设计轮播图片播放区。轮播图整个效果中,播放区是最关键的一个区域,这个区域主要用来放置需要轮播的图片。这个区域使用 carousel-inner 样式来控制,而且其同样放置在 carousel 容器内,并且通过 item 容器来放置每张轮播的图片:

<div id="slidershow" class="carousel">    <!-- 设置图片轮播的顺序 -->    <ol class="carousel-indicators">        <li class="active">1</li>        …    </ol>    <!-- 设置轮播图片 -->    <div class="carousel-inner">        <div class="item active">            <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/rk/201407/ll580x145.jpg"  class="lazy" alt=""></a>        </div>        <div class="item">            <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/dj/201408/zj/zj_580145.jpg"  class="lazy" alt=""></a>        </div>        …        <div class="item">            <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/dj/201408/zqgq_580145.jpg"  class="lazy" alt=""></a>        </div>    </div></div>
로그인 후 복사

  

  第四步:设置轮播图片描述.很多轮播图片效果,在每个图片上还对应有自己的标题和描述内容。其实 Bootstrap 框架中的 Carousel 也提供类似的效果。只需要在 item 中图片底部添加对应的代码.

<div id="slidershow" class="carousel">    <!-- 设置图片轮播的顺序 -->    <ol class="carousel-indicators">        <li class="active">1</li>    …    </ol>    <!-- 设置轮播图片 -->    <div class="carousel-inner">        <div class="item active">            <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/rk/201407/ll580x145.jpg"  class="lazy" alt=""></a>            <!-- 图片对应标题和描述内容 -->            <div class="carousel-caption">                <h3 id="图片标题">图片标题</h3>                <p>描述内容...</p>            </div>        </div>    …    </div></div>
로그인 후 복사

  第五步:设计轮播图片控制器。很多时候轮播图片还具有一个向前播放和向后播放的控制器。在 Carousel 中通过 carousel-control样式配合 left 和 right 来实现。其中left表示向前播放,right表示向后播放。其同样放在carousel容器内:

<div id="slidershow" class="carousel">    <!-- 设置图片轮播的顺序 -->    <ol class="carousel-indicators">       …    </ol>    <!-- 设置轮播图片 -->    <div class="carousel-inner">        …    </div>    <!-- 设置轮播图片控制器 -->    <a class="left carousel-control" href="" >        <span class="glyphicon glyphicon-chevron-left"></span>    </a>    <a class="right carousel-control" href="">        <span class="glyphicon glyphicon-chevron-right"></span>    </a> </div>
로그인 후 복사

二 . 声明式触轮播图的播放(无需JS)

<div id="slidershow" class="carousel slide" data-ride="carousel">  <!-- 设置图片轮播的顺序 -->  <ol class="carousel-indicators">    <li class="active" data-target="#slidershow" data-slide-to="0"></li>    <li data-target="#slidershow" data-slide-to="1"></li>    <li data-target="#slidershow" data-slide-to="2"></li>  </ol>  <!-- 设置轮播图片 -->  <div class="carousel-inner">    <div class="item active">      <a href="##"><img    style="max-width:90%" alt="Bootstrap_Javascript_图片轮播_html/css_WEB-ITnose" ></a>      <div class="carousel-caption">        <h3 id="图片标题">图片标题1</h3>        <p>描述内容1...</p>      </div>    </div>    <div class="item">      <a href="##"><img    style="max-width:90%" alt="Bootstrap_Javascript_图片轮播_html/css_WEB-ITnose" ></a>      <div class="carousel-caption">        <h3 id="图片标题">图片标题2</h3>        <p>描述内容2...</p>      </div>    </div>    <div class="item">      <a href="##"><img    style="max-width:90%" alt="Bootstrap_Javascript_图片轮播_html/css_WEB-ITnose" ></a>      <div class="carousel-caption">        <h3 id="图片标题">图片标题3</h3>        <p>描述内容3...</p>      </div>    </div>  </div>  <!-- 设置轮播图片控制器 -->  <a class="left carousel-control" href="#slidershow" role="button" data-slide="prev">    <span class="glyphicon glyphicon-chevron-left"></span>  </a>  <a class="right carousel-control" href="#slidershow" role="button" data-slide="next">    <span class="glyphicon glyphicon-chevron-right"></span>  </a></div>
로그인 후 복사

  声明式方法是通过定义 data 属性来实现,data 属性可以很容易地控制轮播的位置。其主要包括以下几种:

  1 . data-ride 属性:取值 carousel,并且将其定义在 carousel 上。
  2 . data-target 属性:取值 carousel 定义的 ID 名或者其他样式识别符,如前面示例所示,取值为“#slidershow”,并且将其定义在轮播图计数器的每个 li 上。
  3 . data-slide 属性:取值包括 prev,next,prev表示向后滚动,next 表示向前滚动。该属性值同样定义在轮播图控制器的 a 链接上,同时设置控制器 href 值为容器     4 . carousel 的 ID 名或其他样式识别符。
  5 . data-slide-to 属性:用来传递某个帧的下标,比如 data-slide-to="2",可以直接跳转到这个指定的帧(下标从0开始计),同样定义在轮播图计数器的每个 li 上。

  在这里需要注意可以为 #slidershow 层添加 slide 样式,使用图片与图片切换效果有平滑感。

<div id="slidershow" class="carousel slide" data-ride="carousel">  ...</div>
로그인 후 복사

  除了data-ride="carousel"、data-slide、data-slide-to 以外,轮播组件还支持其他三个自定义属性:

属性名称

类型

默认值

描述

data-interval

number

5000

幻灯片轮换的等待时间(毫秒)。如果为false,轮播将不会自动开始循环

data-pause

string

hover

默认鼠标悬停留在幻灯片区域即停止播放,离开即开始播放

data-wrap

布尔值

true

轮播是否持续循环

  如下代码实现“轮播不持续循环”和“轮播时间间隔为1秒”。

<div id="slidershow" class="carousel" data-ride="carousel" data-wrap="false" data-interval="1000">   ......</div>
로그인 후 복사

三 . JavaScript触发方法图片轮播

HTML:

<div id="slidershow" class="carousel slide">  <!-- 设置图片轮播的顺序 -->  <ol class="carousel-indicators">    <li class="active" data-target="#slidershow" data-slide-to="0">1</li>    <li data-target="#slidershow" data-slide-to="1">2</li>    <li data-target="#slidershow" data-slide-to="2">3</li>  </ol>  <!-- 设置轮播图片 -->  <div class="carousel-inner">    <div class="item active">      <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/rk/201407/ll580x145.jpg"  class="lazy" alt=""></a>      <div class="carousel-caption">        <h3 id="图片标题">图片标题1</h3>        <p>描述内容1...</p>      </div>    </div>    <div class="item">      <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/dj/201408/zj/zj_580145.jpg"  class="lazy" alt=""></a>      <div class="carousel-caption">        <h3 id="图片标题">图片标题2</h3>        <p>描述内容2...</p>      </div>    </div>    <div class="item">      <a href="##"><img src="/static/imghw/default1.png"  data-src="http://images3.c-ctrip.com/dj/201408/zqgq_580145.jpg"  class="lazy" alt=""></a>      <div class="carousel-caption">        <h3 id="图片标题">图片标题3</h3>        <p>描述内容3...</p>      </div>    </div>  </div>  <a class="left carousel-control" href="#slidershow" role="button">    <span class="glyphicon glyphicon-chevron-left"></span>  </a>  <a class="right carousel-control" href="#slidershow" role="button">    <span class="glyphicon glyphicon-chevron-right"></span>  </a></div>
로그인 후 복사

JS:

  $(function(){    $("#slidershow").carousel({      interval:2000    });    $("#slidershow a.left").click(function(){      $(".carousel").carousel("prev");    });    $("#slidershow a.right").click(function(){      $(".carousel").carousel("next");    });  });
로그인 후 복사

  在 carousel() 方法中可以设置具体的参数,如:

属性名称

类型

默认值

描述

interval

number

5000

幻灯片轮换的等待时间(毫秒)。如果为false,轮播将不会自动开始循环

pause

string

hover

默认鼠标悬停留在幻灯片区域即停止播放,离开即开始播放

wrap

布尔值

true

轮播是否持续循环

  使用时,在初始化插件的时候可以传关相关的参数,如:

$("#slidershow").carousel({       interval: 3000});
로그인 후 복사

   Bootstrap 框架中的 carousel 插件还给使用者提供了几种特殊的调用方法,简单说明如下:

  • .carousel("cycle"):从左向右循环播放;
  • .carousel("pause"):停止循环播放;
  • .carousel("number"):循环到指定的帧,下标从0开始,类似数组;
  • .carousel("prev"):返回到上一帧;
  • .carousel("next"):下一帧
  •  

    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

    뜨거운 기사 태그

    메모장++7.3.1

    메모장++7.3.1

    사용하기 쉬운 무료 코드 편집기

    SublimeText3 중국어 버전

    SublimeText3 중국어 버전

    중국어 버전, 사용하기 매우 쉽습니다.

    스튜디오 13.0.1 보내기

    스튜디오 13.0.1 보내기

    강력한 PHP 통합 개발 환경

    드림위버 CS6

    드림위버 CS6

    시각적 웹 개발 도구

    SublimeText3 Mac 버전

    SublimeText3 Mac 버전

    신 수준의 코드 편집 소프트웨어(SublimeText3)

    공식 계정 웹 페이지의 캐싱 업데이트에 어려움 : 버전 업데이트 후 사용자 경험에 영향을 미치는 이전 캐시를 피하는 방법은 무엇입니까? 공식 계정 웹 페이지의 캐싱 업데이트에 어려움 : 버전 업데이트 후 사용자 경험에 영향을 미치는 이전 캐시를 피하는 방법은 무엇입니까? Mar 04, 2025 pm 12:32 PM

    공식 계정 웹 페이지의 캐싱 업데이트에 어려움 : 버전 업데이트 후 사용자 경험에 영향을 미치는 이전 캐시를 피하는 방법은 무엇입니까?

    HTML5 양식 유효성 검사 속성을 사용하여 사용자 입력을 유효성있게하려면 어떻게합니까? HTML5 양식 유효성 검사 속성을 사용하여 사용자 입력을 유효성있게하려면 어떻게합니까? Mar 17, 2025 pm 12:27 PM

    HTML5 양식 유효성 검사 속성을 사용하여 사용자 입력을 유효성있게하려면 어떻게합니까?

    웹 페이지의 PNG 이미지에 뇌졸중 효과를 효율적으로 추가하는 방법은 무엇입니까? 웹 페이지의 PNG 이미지에 뇌졸중 효과를 효율적으로 추가하는 방법은 무엇입니까? Mar 04, 2025 pm 02:39 PM

    웹 페이지의 PNG 이미지에 뇌졸중 효과를 효율적으로 추가하는 방법은 무엇입니까?

    & lt; iframe & gt; 꼬리표? 보안을 사용할 때 보안 고려 사항은 무엇입니까? & lt; iframe & gt; 꼬리표? 보안을 사용할 때 보안 고려 사항은 무엇입니까? Mar 20, 2025 pm 06:05 PM

    & lt; iframe & gt; 꼬리표? 보안을 사용할 때 보안 고려 사항은 무엇입니까?

    & lt; datalist & gt의 목적은 무엇입니까? 요소? & lt; datalist & gt의 목적은 무엇입니까? 요소? Mar 21, 2025 pm 12:33 PM

    & lt; datalist & gt의 목적은 무엇입니까? 요소?

    & lt; meter & gt의 목적은 무엇입니까? 요소? & lt; meter & gt의 목적은 무엇입니까? 요소? Mar 21, 2025 pm 12:35 PM

    & lt; meter & gt의 목적은 무엇입니까? 요소?

    HTML5의 크로스 브라우저 호환성에 대한 모범 사례는 무엇입니까? HTML5의 크로스 브라우저 호환성에 대한 모범 사례는 무엇입니까? Mar 17, 2025 pm 12:20 PM

    HTML5의 크로스 브라우저 호환성에 대한 모범 사례는 무엇입니까?

    iframes 사용의 보안 영향은 무엇이며 어떻게 완화 할 수 있습니까? iframes 사용의 보안 영향은 무엇이며 어떻게 완화 할 수 있습니까? Mar 18, 2025 pm 02:51 PM

    iframes 사용의 보안 영향은 무엇이며 어떻게 완화 할 수 있습니까?

    See all articles