更新记录
1.0.0(2023-05-08)
下载此版本
发布
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
app-vue |
√ |
√ |
√ |
√ |
√ |
√ |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
√ |
√ |
√ |
√ |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
悬浮球
长期维护,欢迎使用,欢迎提出您宝贵的意见
第一步,引用组件
import dyFloatingBall from '@/components/dy-floating-ball';
第二步,注册组件
components: {
dyFloatingBall
}
Props
参数 |
类型 |
默认值 |
说明 |
ballStyle |
Object |
{} |
小球初始化样式,单位建议使用rpx |
ballLeaveUnusedStyle |
Object |
{} |
小球闲置时样式,支持所有对象形式的css样式 |
options |
Object |
见下方 |
字段配置项 |
Options
字段 |
默认值 |
说明 |
moveX |
true |
允许水平移动 |
moveY |
true |
允许垂直移动 |
isEdge |
1 |
0不吸边,1吸边,2仅左吸边,3仅右吸边 |
edgeTime |
10 |
吸边定时器单次时长 |
edgeStep |
10 |
吸边定时器单次步长 |
isAcceleratedSpeed |
true |
是否需要加速度 |
acceleratedSpeedForceOfFriction |
0.95 |
加速度之后的摩擦力,建议0.95左右,0<摩擦力<1 |
leaveUnusedTime |
3000 |
闲置时长,小于等于0为不进入闲置 |
leaveUnusedStatus |
true |
默认闲置状态 |
Events
事件名称 |
说明 |
回调参数 |
diyEvent |
自定义事件回调 |
type:事件(touch触摸/move移动),num次数 |
edgePoint |
小球停靠事件回调 |
小球坐标,left,top |
leaveUnused |
小球闲置后的回调 |
/ |
Slot
字段 |
说明 |
ball |
小球插槽,提供更高的自定义效果 |
示例代码
<template>
<view>
<view class="box">
<dy-floating-ball
class="dyFloatingBall"
:ballStyle="ballStyle"
:ballLeaveUnusedStyle="ballLeaveUnusedStyle"
:options="options"
@diyEvent="diyEvent"
@edgePoint="edgePoint"
@leaveUnused="leaveUnused"
>
<view class="ball" slot="ball">球</view>
</dy-floating-ball>
</view>
</view>
</template>
<script>
import dyFloatingBall from '@/components/dy-floating-ball';
export default {
data() {
return {
ballStyle: { // 小球初始化样式
width: '100rpx',
height: '100rpx',
backgroundImage: 'url(https://img-cdn-aliyun.dcloud.net.cn/dev/img/ext/logo-d.png)',
left: '650rpx',
top: '0rpx',
},
ballLeaveUnusedStyle: { // 小球闲置样式
color: '#fff',
backgroundColor: '#e4393c',
backgroundImage: 'linear-gradient(0deg, #36A5ED 0%, #6EEE96 100%)',
},
options: { // 配置
moveX: true, // 允许水平移动
moveY: true, // 允许垂直移动
isEdge: 1, // 0不吸边,1吸边,2仅左吸边,3仅右吸边
edgeTime: 17, // 吸边定时器单次时长
edgeStep: 17, // 吸边定时器单次步长
isAcceleratedSpeed: true, // 是否需要加速度
acceleratedSpeedForceOfFriction: 0.95, // 摩擦力,建议0.95左右,0<摩擦力<1
leaveUnusedTime: 3000, // 闲置时长,小于等于0为不进入闲置
leaveUnusedStatus: true, // 默认闲置状态
},
}
},
components: {
dyFloatingBall,
},
methods: {
diyEvent(e) {
console.log('对小球操作了', e);
},
edgePoint(e) {
console.log('小球停靠了', e);
},
leaveUnused() {
console.log('小球闲置了');
},
}
}
</script>