基于uniapp vue3 的滑动抢单组件

通过在onMounted获取movable-area与movable-view实例,计算出可滑动的距离

效果图:

代码:

<template><view class="slider-container"><movable-area class="movable-area" id="movableArea"><movable-view class="slider-button"direction="horizontal":x="sliderX"@change="onSliderChange"@touchend="onSliderEnd"id="movableView"><text class="arrow-icon">»</text><text>Slide to grab order</text></movable-view></movable-area></view>
</template><script setup>
import { ref, onMounted } from "vue";const sliderX = ref(0); // 滑块 X 轴位置
const maxX = ref(0);    // 最大可滑动距离onMounted(() => {getMaxX(); // 组件加载后计算最大可滑动距离
});const getMaxX = () => {uni.createSelectorQuery().select("#movableArea").boundingClientRect(areaRect => {uni.createSelectorQuery().select("#movableView").boundingClientRect(viewRect => {if (areaRect && viewRect) {maxX.value = areaRect.width - viewRect.width;console.log("动态计算 maxX:", maxX.value);}}).exec();}).exec();
};const onSliderChange = (event) => {const x = event.detail.x;console.log("当前滑动位置:", x);if (x >= maxX.value) {console.log("滑到了最右边");onSliderEnd();}
};const onSliderEnd = () => {console.log("滑动结束,执行逻辑...");sliderX.value = 0; // 可选择让滑块复位
};
</script><style>
.slider-container {position: relative;width: 100%;height: 88rpx;margin-top: 30rpx;background-color: #F0F0F0;border-radius: 8rpx;overflow: hidden;movable-area {width: 100%;height: 100%;background: linear-gradient(90deg, #4080FF 0%, #4080FF 100%);}.slider-button {width: 300rpx;height: 88rpx;background-color: #4080FF;border-radius: 8rpx;display: flex;align-items: center;justify-content: center;color: #ffffff;font-size: 28rpx;z-index: 1;.arrow-icon {margin-right: 10rpx;font-size: 32rpx;}}}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/69572.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

亚博microros小车-原生ubuntu支持系列:26手势控制小车基础运动

背景知识 手指检测&#xff1a;亚博microros小车-原生ubuntu支持系列&#xff1a;4-手部检测-CSDN博客 程序功能说明 功能开启后&#xff0c;摄像头捕获图像&#xff0c;识别手势来控制小车移动。 手势 “5”小车前进拳头小车后退手势 “1”小车向左手势 “2”小车向右 运…

在人工智能领域 ⊕、⊗和 ⊙ 符号是什么含义?

我们经常在论文中看到 ⊕、⊗和 ⊙ 符号&#xff0c;那么有下面两个问题&#xff1a; 这三个符号有什么作用呢&#xff1f; 如何在论文中正确使用这三个数学符号 1. 两种符号的解释 1.1 逐元素相加&#xff1a;⊕ ⊕ 在论文中表示逐元素相加&#xff0c;如果用两个矩阵表示&a…

NineData云原生智能数据管理平台新功能发布|2025年1月版

本月发布 14 项更新&#xff0c;其中重点发布 6 项、功能优化 7 项、安全性更新 1 项。 重点发布 数据库 Devops - 数据导出功能增强 支持 AWS ElastiCache 数据源&#xff1a;现已支持通过 SQL 查询语句或直接通过库表导出 AWS ElastiCache 数据&#xff0c;方便用户快速提取…

蓝桥与力扣刷题(226 翻转二叉树)

题目&#xff1a;给你一棵二叉树的根节点 root &#xff0c;翻转这棵二叉树&#xff0c;并返回其根节点。 示例 1&#xff1a; 输入&#xff1a;root [4,2,7,1,3,6,9] 输出&#xff1a;[4,7,2,9,6,3,1]示例 2&#xff1a; 输入&#xff1a;root [2,1,3] 输出&#xff1a;[2,…

C# OpenCV机器视觉:OSTU算法实现背景差分的自适应分割

在一个热闹的科技公司里&#xff0c;阿强是一个负责图像分析的员工。他的日常工作就是从各种复杂的图像中提取出有用的信息&#xff0c;可这可不是一件轻松的事情哦 最近&#xff0c;阿强接到了一个艰巨的任务&#xff1a;要从一堆嘈杂的监控图像中分离出运动的物体&#xff0c…

amis组件crud使用踩坑

crud注意 过滤条件参数同步地址栏 默认 CRUD 会将过滤条件参数同步至浏览器地址栏中&#xff0c;比如搜索条件、当前页数&#xff0c;这也做的目的是刷新页面的时候还能进入之前的分页。 但也会导致地址栏中的参数数据合并到顶层的数据链中&#xff0c;例如&#xff1a;自动…

解决 ollama._types.ResponseError 问题

原因 在对问题进行分析后&#xff0c;我认为原因是之前为了在服务器上下载模型&#xff0c;我设置了启动时自动配置的网络代理。然而&#xff0c;ollama在运行时采用了该代理配置&#xff0c;而不是默认的API URL&#xff08;“http://localhost:11434”&#xff09;。因此&am…

用户认证实验

一&#xff0c;拓扑图: 第一步&#xff1a;先开启防火墙 第二步&#xff1a;sw2配置&#xff1a; [sw2] vlan batch 10 20 interface GigabitEthernet0/0/2 port link-type access port default vlan 10 interface GigabitEthernet0/0/3 port link-type access port defau…

活动预告 | 为 AI 新纪元做好准备:助力安全的业务转型

课程介绍 随着现代办公模式的不断演变和 AI 技术的迅速发展&#xff0c;企业在享受效率提升的同时&#xff0c;也面临着信息安全与数据保护的严峻挑战。在利用 AI 技术释放业务潜力的同时&#xff0c;如何确保数据质量与安全已成为企业发展的关键议题。 在本次线上课程中&…

【自学笔记】HTML+CSS基础知识点总览-持续更新

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 HTML CSS 重点知识点总览HTML部分1. 基本结构2. 常用标签3. 属性4. 语义化标签 CSS部分1. 基本语法2. 选择器3. 盒模型4. 布局方式5. 响应式设计6. CSS3新特性 总结…

【再谈设计模式】中介者模式 - 协调对象间交互的枢纽

一、引言 在软件工程&#xff0c;软件开发过程中&#xff0c;复杂的软件系统&#xff0c;对象之间的交互往往错综复杂。当众多对象相互依赖、频繁通信时&#xff0c;系统的耦合度会急剧上升&#xff0c;导致代码难以维护、扩展和理解。就像在一个大型社交聚会中&#xff0c;如果…

网络工程师 (29)CSMA/CD协议

前言 CSMA/CD协议&#xff0c;即载波监听多路访问/碰撞检测&#xff08;Carrier Sense Multiple Access with Collision Detection&#xff09;协议&#xff0c;是一种在计算机网络中&#xff0c;特别是在以太网环境下&#xff0c;用于管理多个设备共享同一物理传输介质的重要…

Jenkins设置防火墙规则允许访问本机IP端口

netsh advfirewall firewall add rule name"Jenkins_8080" dirin actionallow protocolTCP localport8080命令组成部分 netsh - 网络配置命令行工具advfirewall firewall - 高级防火墙配置add rule - 添加新规则name"Jenkins_8080" - 规则名称dirin - 入站…

对于索引,在开发中需要注意什么?

目录 1. 索引的设计原则 2. 索引的类型选择 3. 索引的使用注意事项 4. 索引的性能优化 5. 索引的常见问题 6. 实际开发中的最佳实践 7. 示例 创建索引 分析查询计划 强制使用索引 总结 在开发中使用索引时,需要注意以下几个方面,以确保索引能够有效提升查询性能,…

软件项目验收测试有哪些类型?

在信息技术行业&#xff0c;软件项目的成功不仅依赖于开发能力&#xff0c;更在于准确的验收测试。验收测试是软件开发生命周期中的重要一环。其主要目的是验证软件系统是否符合用户需求和预期。在这一阶段&#xff0c;最终用户能够直观地判断软件是否满足其业务需求。 软件项…

Python截图轻量化工具

一、兼容局限性 这是用Python做的截图工具&#xff0c;不过由于使用了ctypes调用了Windows的API, 同时访问了Windows中"C:/Windows/Cursors/"中的.cur光标样式文件, 这个工具只适用于Windows环境&#xff1b; 如果要提升其跨平台性的话&#xff0c;需要考虑替换cty…

C++ labmbd表达式

文章目录 C++ Lambda 表达式详解1. Lambda 表达式的组成部分:2. Lambda 语法示例(1) 最简单的 Lambda(2) 带参数的 Lambda(3) 指定返回类型的 Lambda3. 捕获外部变量(1) 值捕获(复制)(2) 引用捕获(3) 捕获所有变量4. Lambda 在 STL 中的应用5. Lambda 作为 `std::function`6…

【Deepseek私有化部署】解决 Anything LLM 上传文档一直转圈上传失败问题

这里写自定义目录标题 一、问题描述二、原因分析&#xff08;一&#xff09;Embedder 在 Anything LLM 中的核心作用&#xff08;二&#xff09;默认配置与 Deepseek 的适配问题&#xff08;三&#xff09;未正确配置 nomic - embed - text 引发的异常 三、解决途径&#xff08…

神经网络|(九)概率论基础知识-泊松分布及python仿真

【1】引言 在前序学习进程中&#xff0c;我们已经知晓二项分布是多重伯努利分布&#xff0c;二伯努利分布对应的是可以无限重复、结果只有两种可能的随机试验。 相关文章链接为&#xff1a; 神经网络|(八)概率论基础知识-二项分布及python仿真-CSDN博客 上述文章还调用nump…

使用 OpenGL ES 渲染一个四边形

使用 OpenGL ES 渲染一个四边形 在 iOS 开发中,OpenGL ES 是一个强大的工具,用于实现高性能的 2D 和 3D 图形渲染。本文将通过一个完整的代码示例,详细解析如何使用 OpenGL ES 渲染一个简单的四边形。我们将从基础概念入手,逐步讲解代码的每个部分,帮助你理解 OpenGL ES …