uniapp自定义按钮/文字页面任意位置拖动(movable-area)

自定义标签当前页面随意拖动(不遮挡页面的点击事件)

直接上代码:

1.页面结构:

<template>
    <movable-area class="movable-area">
        <movable-view class="movable-view" :x="x" :y="y" direction="all">
            <text>去安排</text>
        </movable-view>
    </movable-area>
</template>

2.data变量:

	export default {
        data() {
			return {
				x: 320,
				y: 520,
			}
		},
    }

3.css样式:

  .movable-area {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 100%;
		pointer-events: none;
	
		.movable-view {
			pointer-events: auto;
			@include flex;
			align-items: center;
			justify-content: center;
			background: $theme-color;
			width: 120rpx;
			height: 120rpx;
			border-radius: 50%;
			color: #fff;
			font-size: 14px;
		}
	}

当前页面随意拖住不影响页面的任何位置的事件触发! movable-area的初始位置请改变data中的X和Y的初始值。 拿去随便用 好用点赞支持支持~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
A: 可以通过以下步骤在 nvue 页面中利用 movable-area 组件实现滑块校验: 1. 在 nvue 页面中引入 movable-areamovable-view 组件,并确定滑块需要的宽度和高度。 2. 在 template 中添加一个 movable-area 组件,设置宽度和高度,同时设置 data-x 和 data-y 作为滑块的位置。 3. 在 movable-area 组件中添加一个 movable-view 组件,这个组件就是滑块,设置宽度和高度,同时设置 eventchange 事件,用于拖动滑块时获取滑块的位置。 4. 在 eventchange 事件中获取滑块的位置,判断是否滑过规定的位置来判断校验是否通过,如果通过则触发相应的事件。 下面是一个示例代码: ``` <template> <view> <movable-area style="width: 300rpx; height: 100rpx; background-color: #eee;"> <movable-view style="width: 50rpx; height: 50rpx; background-color: #1aad19;" :data-x="x" :data-y="y" @change="onSliderChange" ></movable-view> </movable-area> </view> </template> <script> export default { data() { return { x: 0, y: 0, sliderWidth: 50, // 滑块的宽度 offset: 50, // 滑块需要滑过的距离 } }, methods: { onSliderChange(e) { const x = e.detail.x if (x >= this.offset) { // 校验通过 console.log('验证通过') // 触发相应的事件 } }, }, } </script> ``` 以上代码中,我们在 movable-view 组件上绑定了一个 change 事件,用于在滑动过程中获取滑块的位置。这个位置使用了 data-x 和 data-y 绑定,它们是可响应的数据,可以随时更改滑块的位置。在 onSliderChange 方法中,我们获取到了滑块的位置,判断是否滑过了规定的距离,如果通过则触发相应的事件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高桥留

打赏更新更快!质量更好!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值