이번에는 인덱스 버튼으로 자동 캐러셀 전환 기능을 구현하기 위한 jquery를 가져왔습니다. jquery가 인덱스 버튼으로 자동 캐러셀 전환 기능을 구현할 때의 주의사항은 무엇인지 살펴보겠습니다.
팁: 브라우저가 제대로 작동하지 않으면 탐색 모드를 전환해 보세요.
헤드 영역에 CSS 스타일 소개:
<link rel="stylesheet" href="css/reset.css" media="screen"> <link rel="stylesheet" href="css/wy-mod-banner.css" media="screen">
제가 공유한 jquery에는 다음과 같은 인덱스 버튼과 자동 캐러셀 전환 특수 효과 코드가 있습니다.
<!doctype html> <html lang="zh-cn"> <head> <meta charset="utf-8"> <meta http-equiv="Content-Language" content="zh-cn"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>腾讯微云首页jquery焦点图</title> <link rel="stylesheet" href="css/reset.css" media="screen"> <link rel="stylesheet" href="css/wy-mod-banner.css" media="screen"> <!--[if IE 6]><script type="text/javascript">try{document.execCommand('BackgroundImageCache',false,true);}catch(e){}</script><![endif]--> </head> <body> <p class="wrapper"> <p class="wy-content"> <p class="wy-mod-banner"> <p id="_banners" class="banners"> <p class="banner banner4"> <img src="images/banner4.jpg" alt="微云,生活精彩"> <p class="info"> <h3>微云,生活精彩</h3> <p>收录生活中的点点滴滴,精彩从此刻开始!</p> <a href="http://www.jb51.net/jiaoben/" data-log-id="150008" class="link-download" target="_blank" data-log-id="150001"><span>马上下载 </span><i class="bor_c"></i></a> </p> </p> <p class="banner banner3"> <img src="images/banner3.jpg" alt="微云,生活精彩"> <p class="info"> <h3>微云,生活精彩</h3> <p>收录生活中的点点滴滴,精彩从此刻开始!</p> <a href="http://www.jb51.net/jiaoben/" data-log-id="150008" class="link-download" target="_blank" data-log-id="150001"><span>马上下载 </span><i class="bor_c"></i></a> </p> </p> <p class="banner banner2"> <img src="images/banner2.jpg" alt="微云,生活精彩"> <p class="info"> <h3>微云,生活精彩</h3> <p>收录生活中的点点滴滴,精彩从此刻开始!</p> <a href="http://www.jb51.net/jiaoben/" data-log-id="150008" class="link-download" target="_blank" data-log-id="150001"><span>马上下载 </span><i class="bor_c"></i></a> </p> </p> <p class="banner banner1"> <img src="images/banner1.jpg" alt="微云,生活精彩"> <p class="info"> <h3>微云,生活精彩</h3> <p>收录生活中的点点滴滴,精彩从此刻开始!</p> <a href="http://www.jb51.net/jiaoben/" data-log-id="150008" class="link-download" target="_blank" data-log-id="150001"><span>马上下载</span> <i class="bor_c"></i></a> </p> </p> </p> <p id="_focus" class="focus"> <a data-index="0" href="#" class="on"> <span class="bg-b"></span> <span class="inner"></span> </a> <a data-index="1" href="#"> <span class="bg-b"></span> <span class="inner"></span> </a> <a data-index="2" href="#"> <span class="bg-b"></span> <span class="inner"></span> </a> <a data-index="3" href="#"> <span class="bg-b"></span> <span class="inner"></span> </a> </p> </p> </p> </p> <script type="text/javascript" src="js/jquery-1.8.3.min.js"></script> <script type="text/javascript"> var glume = function(banners_id, focus_id){ this.$ctn = $('#' + banners_id); this.$focus = $('#' + focus_id); this.$adLis = null; this.$btns = null; this.switchSpeed = 5;//自动播放间隔(s) this.defOpacity = 1; this.crtIndex = 0; this.adLength = 0; this.timerSwitch = null; this.init(); }; glume.prototype = { fnNextIndex:function(){ return (this.crtIndex >= this.adLength-1)?0:this.crtIndex+1; }, //动画切换 fnSwitch:function(toIndex){ if(this.crtIndex==toIndex){return;} this.$adLis.css('zIndex', 0); this.$adLis.filter(':eq('+this.crtIndex+')').css('zIndex', 2); this.$adLis.filter(':eq('+toIndex+')').css('zIndex', 1); this.$btns.removeClass('on'); this.$btns.filter(':eq('+toIndex+')').addClass('on'); var me = this; $(this.$adLis[this.crtIndex]).animate({ opacity: 0 }, 1000, function() { me.crtIndex = toIndex; $(this).css({ opacity: me.defOpacity, zIndex: 0 }); }); }, fnAutoPlay:function(){ this.fnSwitch(this.fnNextIndex()); }, fnPlay:function(){ var me = this; me.timerSwitch = window.setInterval(function() { me.fnAutoPlay(); },me.switchSpeed*1000); }, fnStopPlay:function(){ window.clearTimeout(this.timerSwitch); this.timerSwitch = null; }, init:function(){ this.$adLis = this.$ctn.children(); this.$btns = this.$focus.children(); this.adLength = this.$adLis.length; var me = this; //点击切换 this.$focus.on('click', 'a', function(e) { e.preventDefault(); var index = parseInt($(this).attr('data-index'), 10) me.fnSwitch(index); }); this.$adLis.filter(':eq('+ this.crtIndex +')').css('zIndex', 2); this.fnPlay(); //hover时暂停动画 this.$ctn.hover(function() { me.fnStopPlay(); }, function() { me.fnPlay(); }); if($.browser.msie && $.browser.version < 7) { this.$btns.hover(function() { $(this).addClass('hover'); },function() { $(this).removeClass('hover'); }); } } }; var player1 = new glume('_banners', '_focus'); </script> </body> </html>
이 기사의 사례를 읽으신 후 해당 방법을 마스터하셨으리라 믿습니다. 더 흥미로운 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 주목해 주세요!
추천 자료:
jQuery는 그림 회전판 슬라이드쇼 효과를 구현합니다
jQuery 애니메이션 효과 그림 회전판 구현(코드 포함)
위 내용은 jquery는 인덱스 버튼을 사용하여 자동 캐러셀 전환 기능을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!