Vue-SuperSlide(Github) 是 SuperSlide 的 Vue 封裝版本,API 配置及使用方法與 SuperSlide 幾乎一致,讓你可以便捷的在 Vue 工程中使用 SuperSlide。javascript
關於 SuperSlide 的詳細介紹能夠到 SuperSlide 官方網站 - 大話主席 進行查看。css
大話主席的 SuperSlide 是多年之前前端還處於 jQuery 時代我使用的最多的一個插件,它幫我解決了網頁中大部分的文字、圖片切換輪播等問題,用起來的是特別的順手,固然如今前端三大框架的火熱,已經沒有多少人在關注依賴於 jQuery 的插件了,可是我相信 Superslide 的粉絲仍是有很多的。html
今天提供一個 Superslide 的 Vue 封裝版本,同時也逐步將 Superslide 官網上的全部 demo 用例所有示例一遍(目前正在逐步添加),讓你可以便捷的在 Vue 工程中使用 Superslide 的所有功能。前端
Demo Pagevue
CDN Examplejava
<!-- import Vue before SuperSlide --> <script src="https://unpkg.com/vue/dist/vue.js"></script> <!-- import JavaScript --> <script src="https://unpkg.com/vue-superslide/lib/vue-superslide.umd.min.js"></script>
npm install vue-superslide --save
import Vue from 'vue' import VueSuperSlide from 'vue-superslide' Vue.use(VueSuperSlide)
<template> <superslide :options="options" class="slideBox"> <!-- slides --> <div class="bd"> <ul> <li> <a href="javascript:;"><img src="../images/pic1.jpg"/></a> </li> <li> <a href="javascript:;"><img src="../images/pic2.jpg"/></a> </li> <li> <a href="javascript:;"><img src="../images/pic3.jpg"/></a> </li> </ul> </div> <!-- Optional controls slots --> <!-- slot="titCell" --> <div class="hd" slot="titCell"> <ul> <li class="on">1</li> <li class="">2</li> <li class="">3</li> </ul> </div> <!-- slot="prev" --> <a class="prev" href="javascript:void(0)" slot="prev"></a> <!-- slot="next" --> <a class="next" href="javascript:void(0)" slot="next"></a> <!-- slot="pageStateCell" --> <span class="pageState" slot="pageStateCell"></span> </superslide> </template>
<script> export default { name: "slideBox", data () { return { options: { mainCell: ".bd ul", autoPlay: true } } } </script>
<style type="text/css"> /* 本例子css */ .slideBox { width: 450px; height: 230px; overflow: hidden; position: relative; border: 1px solid #ddd; } .slideBox .hd { height: 15px; overflow: hidden; position: absolute; right: 5px; bottom: 5px; z-index: 1; } .slideBox .hd ul { overflow: hidden; zoom: 1; float: left; } .slideBox .hd ul li { float: left; margin-right: 2px; width: 15px; height: 15px; line-height: 14px; text-align: center; background: #fff; cursor: pointer; } .slideBox .hd ul li.on { background: #f00; color: #fff; } .slideBox .bd { position: relative; height: 100%; z-index: 0; } .slideBox .bd li { zoom: 1; vertical-align: middle; } .slideBox .bd img { width: 450px; height: 230px; display: block; } /* 下面是前/後按鈕代碼,若是不須要刪除便可 */ .slideBox .prev, .slideBox .next { position: absolute; left: 3%; top: 50%; margin-top: -25px; display: block; width: 32px; height: 40px; background: url(../assets/images/slider-arrow.png) -110px 5px no-repeat; filter: alpha(opacity=50); opacity: 0.5; } .slideBox .next { left: auto; right: 3%; background-position: 8px 5px; } .slideBox .prev:hover, .slideBox .next:hover { filter: alpha(opacity=100); opacity: 1; } .slideBox .prevStop { display: none; } .slideBox .nextStop { display: none; } </style>
SuperSlide 官網中的 API 及配置都可使用git
若是你的 Vue 項目中還有各類圖片、文字的切換、輪播、滾動效果,你能夠直接使用 Vue-SuperSlide 了,更多的 Examples 陸續更新。github
若有問題歡迎留言溝通。npm