Исчезновение встроенных изображений jquery вместе с заголовком в <span> - PullRequest
2 голосов
/ 09 марта 2011

Я использую этот код для постепенного исчезновения изображений http://snook.ca/archives/javascript/simplest-jquery-slideshow

jQuery

$(function(){
    $('.fadein img:gt(0)').hide();
    setInterval(function(){
      $('.fadein :first-child').fadeOut()
         .next('img').fadeIn()
         .end().appendTo('.fadein');}, 
      3000);
});

CSS

.fadein { position:relative; width:500px; height:332px; }
.fadein img { position:absolute; left:0; top:0; }

HTML

<div class="fadein">
  <img src="http://farm3.static.flickr.com/2610/4148988872_990b6da667.jpg">
  <img src="http://farm3.static.flickr.com/2597/4121218611_040cd7b3f2.jpg">
  <img src="http://farm3.static.flickr.com/2531/4121218751_ac8bf49d5d.jpg">
</div>

Этот код хорошо работает с изображениями.Но я хочу показать разные заголовки для каждого изображения.

Мой код будет таким:

<div class="fadein">
<p><span>Caption 1</span><img src="http://farm3.static.flickr.com/2610/4148988872_990b6da667.jpg"></p>
<p><span>Caption 2</span><img src="http://farm3.static.flickr.com/2597/4121218611_040cd7b3f2.jpg"></p>
<p><span>Caption 3</span><img src="http://farm3.static.flickr.com/2531/4121218751_ac8bf49d5d.jpg"></p>
</div>

Как изменить приведенный выше код JQuery, чтобы добиться постепенного исчезновения изображения вместе сподписи?

Я хочу показать заголовок поверх изображения.

JsFiddle текущего примера

http://jsfiddle.net/7VkrG/1/

JsFiddle ссылка с моим требуемым HTML-кодом

http://jsfiddle.net/twx9T/1/

1 Ответ

2 голосов
/ 09 марта 2011

Это похоже на то, что вы хотите (возможно, вам придется отредактировать CSS, чтобы заголовок отображался на ваш вкус).

HTML:

<div class="fadein">
<p><img src="http://farm3.static.flickr.com/2610/4148988872_990b6da667.jpg"><span>Caption 1</span> </p>
<p><img src="http://farm3.static.flickr.com/2597/4121218611_040cd7b3f2.jpg"><span>Caption 2</span> </p>
<p><img src="http://farm3.static.flickr.com/2531/4121218751_ac8bf49d5d.jpg"><span>Caption 3</span> </p>
</div>

CSS:

body {font-family:Arial, Helvetica, sans-serif; font-size:12px;}

.fadein { position:relative; height:332px; width:500px; }
.fadein p { position:absolute; left:0; top:0; background-color:#fff; border:1px solid black; }

jQuery:

$(function() {
    $('.fadein p').hide();
    $('.fadein p:first-child').show();
    setInterval(function() {
        $('.fadein p:first-child').fadeOut(function(){
            $(this).appendTo('.fadein');
        }).next().fadeIn();
    }, 3000);
});

jsFiddle:

http://jsfiddle.net/sYhQC/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...