vue组件开发之slider组件使用详解

本文实例为大家分享了vue组件开发之slider组件的具体使用代码,供大家参考,具体内容如下

代码如下:

<template>

<div class="slider">

<div class="wrapbox">

<div class="item" v-for="(item, index) in items" style="">{{item.title}}</div>

</div>

<div class="status">

<span v-for="(item, index) in items" v-bind:class="index == count ? 'active' : '' "></span>

</div>

<div class="prev-btn btn" @click="prev()"><</div>

<div class="next-btn btn" @click="next()">></div>

</div>

</template>

<script>

export default {

name: 'slider',

data (){

return {

count: 0,

items:[{

name:"1",

id:1,

title:"我是图1的内容"

},{

name:"2",

id:2,

title:"我是图2的内容"

},{

name:"3",

id:3,

title:"我是图3的内容"

},{

name:"4",

id:4,

title:"我是图4的内容"

}]

}

},

components: { },

methods: {

prev () {

console.log(this.count);

if(this.count > 0){

this.count--;

document.querySelector(".wrapbox").style.webkitTransform = "translateX(-" + (this.count * 400) + "px)";

}else{

this.count = 0;

}

},

next () {

console.log(this.count);

if(this.count < 3){

this.count++;

document.querySelector(".wrapbox").style.webkitTransform = "translateX(-" + (this.count * 400) + "px)";

}else{

this.count = 3;

}

}

},

created () {

}

}

</script>

<style scoped>

*{margin:0 auto;padding:0;font-family:"微软雅黑";}

.slider{

position:relative;

height:200px;

width:400px;

margin:50px auto;

overflow:hidden;

}

.slider .wrapbox{

width:1600px;

height:200px;

transition:all 1.5s;

}

.slider .status{

position:absolute;

top:170px;

height:20px;

width:400px;

text-align:center;

}

.slider .status span{

display:inline-block;

height:20px;

width:20px;

margin:0 10px;

background:#eee;

border-radius:10px;

}

.slider .status span.active{

background:#352929;

}

.slider .wrapbox .item{

float:left;

height:200px;

width:400px;

line-height:200px;

text-align:Center;

color:#fff;

font-size:25px;

background:red;

}

.slider .wrapbox .item:nth-of-type(2){

background:blue;

}

.slider .wrapbox .item:nth-of-type(3){

background:yellow;

}

.slider .wrapbox .item:nth-of-type(4){

background:green;

}

.slider .btn{

position:absolute;

top:50%;

height:40px;

width:20px;

line-height:40px;

color:#fff;

text-align:center;

background:rgba(10, 10, 10, .85);

transform:translateY(-50%);

cursor:pointer;

}

.slider .next-btn{

right:0;

}

</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是 vue组件开发之slider组件使用详解 的全部内容, 来源链接: utcz.com/p/217590.html

回到顶部