0
이미지 (.tip-image)와 텍스트 (.tip-box)를 회전시키는 jQuery의 간단한 슬라이더가 있습니다. 텍스트 (.tip 상자)에서 애니메이션을 제거하여 다음 항목으로 변경할 때 즉시 표시되도록하고 이미지에 애니메이션을 유지합니다.jQuery : 슬라이더 애니메이션을 변경하는 방법
(function($) {
$(document).ready(function() {
$('#training-tips-slider a').click(function(e) {
var $active = $('.training-tips-post.active');
var $next = $(this.hash);
$active.addClass('last-active');
$active.removeClass('active');
$next.addClass('active');
$next.css({opacity:0}).animate({opacity:1}, 800, function() {$active.removeClass('last-active');})
$('#training-tips-slider a').removeClass('active');
$(this).addClass('active');
e.preventDefault();
});
});
var current = 1;
function autoAdvance() {
if(current==-1)
return false;
$('#training-tips-slider a').eq(current%$('#training-tips-slider a').length).trigger('click',[true]);
current++;
}
// The number of seconds that the slider will auto-advance:
var changeEvery = 15;
var itvl = setInterval(function() { autoAdvance() }, changeEvery*1000);
})(jQuery);
CSS :
.training-tips-post {background: #fff; z-index: 8;}
.training-tips-post.last-active {z-index: 9;}
.training-tips-post.active {z-index: 10;}
HTML :
<div id="training-tips-post-1" class="training-tips-post active">
<div class="tip-image">
<img class="wp-post-image" height="220" width="680" src="path-to-my-image1.jpg">
</div>
<div class="tip-box">
<h2>TIP HEADER 1</h2>
<p class="tip-text">This a text for item number 1</p>
</div>
</div> <!-- END of #training-tips-post-1 -->
<div id="training-tips-post-2" class="training-tips-post">
<div class="tip-image">
<img class="wp-post-image" height="220" width="680" src="path-to-my-image2.jpg">
</div>
<div class="tip-box">
<h2>TIP HEADER 2</h2>
<p class="tip-text">This a text for item number 2</p>
</div>
</div> <!-- END of #training-tips-post-2 -->
<div id="training-tips-post-3" class="training-tips-post">
<div class="tip-image">
<img class="wp-post-image" height="220" width="680" src="path-to-my-image3.jpg">
</div>
<div class="tip-box">
<h2>TIP HEADER 3</h2>
<p class="tip-text">This a text for item number 3</p>
</div>
</div> <!-- END of #training-tips-post-3 -->
<!-- SLIDER -->
<ul id="training-tips-slider">
<li><a href="#training-tips-post-1" title="Featuring: TIP 1" class="active">Spánek</a></li>
<li><a href="#training-tips-post-2" title="Featuring: TIP 2" >Poslušnost psa</a></li>
<li><a href="#training-tips-post-3" title="Featuring: TIP 3">Spánek</a></li>
</ul>
그것이 내가 생각한 것이고, 나는 그것을했지만, 나는 전환을 "부드럽게"할 수 없었습니다 (끝내십시오). 나는 $ next.children (".tip-image")으로 해냈다. .. (이 경우 find()와 children() 사이의 차이점은 무엇입니까?) 이미지가 서로 바뀌지 않고 이미지 -1에서 흰색으로, 이미지 2에서 이미지로 바뀌 었습니다. 제발 도와 줄 수있어? –
몇 가지 방법이 있습니다. 흰색으로 깜박이는 이유는 .training-tips-post의 배경색입니다. 작업 솔루션을 제공하기 전에 코드를로드해야합니다. 아직 이해하지 못했으면 알려주세요. – spacious
아니요, 직접 알아 내지 못했습니다. 나는 이미지를 흰색으로 깜박이기를 원했지만 텍스트는 삽입하지 않았다. 그래서 나는 삽입했다 .training-tips-post {background : #fff;} 그러나 텍스트는 애니메이션없이 완전히 흰색으로 깜박이지 않고 (새 텍스트로 바꾸기 만하면된다) . –