最近項目中需要實現3D圖片層疊旋轉木馬切換的效果,於是用到了jquery.roundabout.js。
兼容性如圖:
html結構代碼:
<div id="featured-area"> <ul> <li><img src="images/fnfast.jpg"/></li> <li><img src="images/photoshop_plus.jpg"/></li> <li><img src="images/speedometer.jpg"/></li> <li><img src="images/photoshop_plus.jpg"/></li> </ul> <a href="javascript:void(0)" class="ban_l_btn"></a> <a href="javascript:void(0)" class="ban_r_btn"></a> </div>
css樣式:
#featured-area{height:337px;width:1200px;margin:40px auto 0 auto;position:relative;} .roundabout-holder{list-style:none;width:500px;height:300px;margin:0px auto;} .roundabout-moveable-item{font-size:12px!important;height:300px;width:600px;cursor:pointer;padding:5px;border:1px solid #aaaaaa;-webkit-border-radius:5px;-moz-border-radius:5px;background:#f9f9f9;} .roundabout-moveable-item img{height:100%;width:100%;background-color:#FFFFFF;margin:0;} .roundabout-in-focus{cursor:auto;} .roundabout-in-focus:hover{-webkit-box-shadow:0px 0px 20px #787878;-moz-box-shadow:0px 0px 20px #787878;background:#f9f9f9;} .roundabout-holder span{display:none;} .roundabout-in-focus:hover span{display:inline;position:absolute;bottom:5px;right:5px;padding:8px 20px;background:#f9f9f9;color:#3366cc;z-index:999;-webkit-border-top-left-radius:5px;-moz-border-radius-topLeft:5px;border-left:1px solid #aaaaaa;border-top:1px solid #aaaaaa;} .roundabout a:active, .roundabout a:focus, .roundabout a:visited{outline:none;text-decoration:none;} .roundabout li{margin:0} #featured-area .ban_l_btn,#featured-area .ban_r_btn{ position: absolute; top: 50%;margin-top:-34px; left:-1px; display: block; width: 65px; height: 68px; background: url(../images/wid65Btn.png) 0 0 ; z-index: 9; overflow: hidden; } #featured-area .ban_r_btn{ left:auto; right:-1px; background-position: -65px 0; } #featured-area ul li div{width:100%;height: 100%;}
引入的js
<script type="text/javascript" src="js/jquery-1.11.3.min.js"></script> <script type="text/javascript" src="js/jquery.roundabout-1.0.min.js"></script> <script type="text/javascript" src="js/jquery.easing.1.3.js"></script>
調用的一般形式:
$('主元素名稱').roundabout({ duration: 600, // 運動速度 btnPrev: ".ban_r_btn", // 右按鈕 btnNext: ".ban_l_btn", // 左按鈕 autoplay: true, // 自動播放 autoplayDuration: 1500,// 自動播放的時間 minOpacity: 0, //最小的透明度 maxOpacity: 1, //最大的透明度 reflect: true, // 為true時是從左向右移動,為false從右向左移動 startingChild: 3, // 默認的顯示第幾張圖片 autoplayInitialDelay: 5000, // 從第幾秒時,開始自動播放(默認毫秒)開始的第一次管用 autoplayPauseOnHover: true, // 鼠標移入元素內是否自動播放,為true不播放,false還自動播放 enableDrag: true // 在移動端可以拖拽播放 });
實現的效果如圖:
更多詳解請查看地址:http://demo.niutuku.com/js/20/3/
當然該插件可擴展其它更多效果,如jQuery.Roundabout.js制作圖片傾斜層疊切換效果,參考地址:http://www.uedsc.com/jquery-roundabout-js.html