我已經幾乎得到它的工作,它只是第一個和第二個標題,弄亂了,我不知道爲什麼!我玩過if語句和:visible選擇符等,看看是什麼讓它發生變化,但無法理解它。
你可以看到這個小提琴我的意思:jsfiddle.net/MrLuke/QSj4k/33jQuery圖像滑塊標題問題,顯示錯誤
如果有一個第一個標題就說明,但第二個將不會出現,它會顯示在第三字幕代替第二,以及第三顯示。這讓我很困惑。看來第1和第2個標題搞砸了,然後其他任何標題都會正確顯示。
//DISPLAY OR HIDE FIRST CAPTION
var title = $('.slide:not("first")').children('img').attr('title');
if (title == "") {
$('#slide_caption').fadeOut(); //HIDE CAPTION IF NO ALT TEXT
} else {
$('#slide_caption').fadeIn();
$('#slide_caption').html('<span>' + title + '</span>'); //SHOW ALT TEXT CAPTION
}
(function imageTransition() {
setTimeout(function() {
$('.slide:visible').fadeOut("slow"); // FADE OUT VISIBLE IMAGE
if ($('.slide:visible').next('.slide').size("slow") < 1) {
$('.slide:first').fadeIn(); // FADE IN FIRST IMAGE
var title = $('.slide:visible').children('img').attr('title');
if (title == "") {
$('#slide_caption').fadeOut(); //HIDE CAPTION IF NO TITLE TEXT
} else {
$('#slide_caption').fadeIn();
$('#slide_caption').html('<span>' + title + '</span>');
}
} else {
$('.slide:visible').next('.slide').fadeIn("slow"); // FADE IN NEXT IMAGE
var title = $('.slide:visible').next('.slide').children('img').attr('title');
if (title == "") {
$('#slide_caption').fadeOut(); //HIDE CAPTION IF NO TITLE TEXT
} else {
$('#slide_caption').fadeIn();
$('#slide_caption').html('<span>' + title + '</span>');
}
}
imageTransition(); //TRIGGER FUNCTION AGAIN
}, Speed); //Xms INTERVAL BEFORE FUNCTION RUNS AGAIN
})();
這是查看是否圖像具有title屬性的部分,然後將其插入一個span標籤之間顯示的標題:
var title = $('.slide:visible').children('img').attr('title');
if (title == "") {
$('#slide_caption').fadeOut(); //HIDE CAPTION IF NO ALT TEXT
} else {
$('#slide_caption').fadeIn();
$('#slide_caption').html('<span>' + title + '</span>');
}
和HTML:
<div id="slide_wrapper">
<p id="slide_controls">
<span id="prev-but"><img src="http://webbossuk.com/admin/JS/webboss-slider/imgs/but_prev.png" alt="Previous" /></span>
<span id="next-but"><img src="http://webbossuk.com/admin/JS/webboss-slider/imgs/but_next.png" alt="Next" /></span>
</p>
<div id="image-container">
<div class="slide">
<img class="slide_img" src="http://www.webbossuk.com/uploads/features_banner_shop.jpg" alt="Slide 1" title="" />
</div>
<div class="slide">
<a href="#">
<img class="slide_img" src="http://www.webbossuk.com/uploads/features_banner_podcasts.jpg" alt="Slide 2" title="2" />
</a>
</div>
<div class="slide">
<img class="slide_img" src="http://www.webbossuk.com/uploads/features_banner_page_ed.jpg" alt="Slide 3" title="3" />
</div>
<div class="slide">
<img class="slide_img" src="http://www.webbossuk.com/uploads/features_banner_members.jpg" alt="Slide 4" title="4" />
</div>
<div class="slide">
<img class="slide_img" src="http://www.webbossuk.com/uploads/features_banner_more.jpg" alt="Slide 5" title="5" />
</div>
<p id="slide_caption"><span></span></p>
</div>
</div>
我已經提到過它,但爲了以防萬一,here's the fiddle看到一個活生生的例子(和問題)
任何人都可以看到爲什麼第一個和第二個標題不工作像其餘?
好你的第一個標題不顯示是因爲你沒有第一張幻燈片的標題 – Huangism
@黃色 - 我知道在這裏,我正在改變和試驗,沒有它 – MrLewk
我的答案也能解決你的問題嗎? – Huangism