您的位置:首页 > Web前端 > Vue.js

vue悬浮可拖拽悬浮按钮的实例代码

2020-03-12 07:10 501 查看

前言

vue开发手机端悬浮按钮实现,可以拖拽,滚动的时候收到里边,不影响视线

github地址

使用,基于vue-cli3.0+webpack 4+vant ui + sass+ rem适配方案+axios封装,构建手机端模板脚手架 vue-h5-template

后续将发布各种商城组件组件,让商城简单高效开发

 

线上体验

 

使用

将 src/components文件夹下的s-icons组件放到你的组件目录下

使用组件

// template
<template>
<div>
<float-icons padding="10 10 60 10" class="icons-warp">
<div class="float-icon-item">
<img src="../../assets/images/home-icon.png" alt="" @click="handleIcons('home')">
<span>首页</span>
</div>
<div class="float-icon-item">
<img src="../../assets/images/cart-icon.png" alt="" @click="handleIcons('cart')">
<span>购物车</span>
</div>
</float-icons>
</div>
</template>

<script>
import FloatIcons from '@/components/s-icons'
export default {
components: {
'float-icons': FloatIcons
},

methods: {
// 点击按钮
handleIcons(router) {
console.log('router', router)
this.$router.push(router)
}
}
}
</script>
<style lang='scss' scoped>
.icons-warp {
border-radius: 25px;
.float-icon-item {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
width: 50px;
height: 50px;
img {
width: 25px;
height: 25px;
margin-bottom: 3px;
}
span {
font-size: 9px;
color: #666666;
}
}
}
</style>

参数

字段名 类型 默认值 描述
padding String '10 10 10 10' 悬浮按钮可拖拽的安全范围,与 css padding 传参一致
scoller String '' 监听页面滚动容器 id,不传时候监听 window (解决滚动时悬浮框按钮不收进去)

注意

如果滚滚动的时候收到里边,需要穿scoller参数

比如:

你的滚动列表外层div 设置id

<div id="loadmore">
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="onLoad">
<van-cell v-for="item in list" :key="item" :title="`我是你的小仙女,爱你第${item}遍`" />
</van-list>
</div>

组件传参 scoller="loadmore"

<float-icons **scoller="loadmore"** padding="10 10 60 10" class="icons-warp">
</float-icons>

因为你可能使用组件导致监听的滚动元素是window,所以你需要将你的滚动容器的id传进我的组件

总结

以上所述是小编给大家介绍的vue悬浮可拖拽悬浮按钮的实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  vue 悬浮 按钮