实现振动效果(微信小程序)
社区服务
火星文
银行
结婚
道具中心
勋章中心
管理操作原因
基本信息
管理团队
管理操作
在线会员
会员排行
版块排行
帖子排行
手机版
小说论坛
用户中心
搜索
银行
猴岛论坛
帖子
用户
版块
帖子
高级搜索
社区服务
签到统计
关闭
选中
1
篇
全选
猴岛论坛
电脑百科
实现振动效果(微信小程序)
发帖
回复
倒序阅读
最近浏览的帖子
最近浏览的版块
« 返回列表
新帖
悬赏
任务
交易贴
自动发卡
拍卖
红包
际遇红包
4
个回复
[技术小组]
实现振动效果(微信小程序)
楼层直达
算账
ZxID:29357411
关注Ta
注册时间
2013-09-11
最后登录
2024-11-21
发帖
38774
在线
2868小时
精华
0
DB
21596
威望
32088
保证金
0
桃子
19
鲜花
0
鸡蛋
0
访问TA的空间
加好友
用道具
发消息
加好友
他的帖子
对该用户使用道具
qq
等级:
版主
配偶:
浓酒与歌
举报
只看楼主
使用道具
楼主
发表于: 2023-08-17
0
描述:1.png
一、微信官方文档资料
官方地址:
https://developers.weixin.qq.com/miniprogram/dev/api/device/vibrate/wx.vibrateShort.html
描述:1.png
1、wx.vibrateShort(Object object)
基础库 1.2.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持
小程序插件:支持,需要小程序基础库版本不低于 1.9.6
功能描述:
使手机发生较短时间的振动(15 ms)。仅在 iPhone 7 / 7 Plus 以上及 Android 机型生效
参数:
描述:1.png
案例说明:
wxml代码
复制代码
<button bindtap="vibrateShortTap">振动(15ms)</button>
js代码
复制代码
vibrateShortTap: function () {
// 使手机振动15ms
wx.vibrateShort();
},
2、wx.vibrateLong(Object object)
基础库 1.2.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持
小程序插件:支持,需要小程序基础库版本不低于 1.9.6
功能描述:
使手机发生较长时间的振动(400 ms)
参数:
复制代码
属性 类型 默认值 必填 说明
success function 否 接口调用成功的回调函数
fail function 否 接口调用失败的回调函数
complete function 否 接口调用结束的回调函数(调用成功、失败都会执行)
案例说明:
wxml代码
复制代码
<button bindtap="vibrateLongTap">振动(400ms)</button>
js代码
复制代码
vibrateLongTap: function () {
// 使手机振动400ms
wx.vibrateLong();
},
二、手机振动应用场景
(以 wx.vibrateLong() 方法为例)
1、如何实现一直震动?
要实现一直震动的效果,可以使用 wx.vibrateLong() 方法以一定的时间间隔重复调用自身来实现。
以下是一个示例代码,实现一直震动的效果:
复制代码
function vibrateContinuously() {
wx.vibrateLong({
success: function () {
// 在成功回调中递归调用自身,以实现震动的连续效果
vibrateContinuously();
},
fail: function (err) {
console.error('震动调用失败:', err);
}
});
}
// 调用函数开始连续震动
vibrateContinuously();
在上述代码中,我们定义了一个名为 vibrateContinuously 的函数,在该函数中调用 wx.vibrateLong() 来触发长震动。在成功回调函数中,我们使用递归的方式再次调用 vibrateContinuously() 函数,从而实现连续震动的效果。
2、如何关闭连续震动?
要关闭连续震动,需要使用 wx.stopVibrate() 方法来停止当前正在进行的震动。以下是一个示例代码,用于关闭连续震动
:
复制代码
// 定义标记用于判断是否要停止震动
let shouldStopVibrating = false;
function vibrateContinuously() {
// 检查是否需要停止震动
if (shouldStopVibrating) {
return; // 停止震动
}
wx.vibrateLong({
success: function() {
// 在成功回调中递归调用自身,以实现连续震动的效果
vibrateContinuously();
},
fail: function(err) {
console.error('震动调用失败:', err);
}
});
}
// 调用函数开始连续震动
vibrateContinuously();
// 通过设置 shouldStopVibrating 为 true 来停止震动
shouldStopVibrating = true;
// 停止当前正在进行的震动
wx.stopVibrate();
在上述代码中,我们使用了一个名为 shouldStopVibrating 的标记变量,通过将其设置为 true 来停止震动。然后在递归函数 vibrateContinuously 中添加条件判断,如果 shouldStopVibrating 变量为 true,就直接退出函数,从而停止连续震动。最后,调用 wx.stopVibrate() 方法来停止当前正在进行的震动。
通过设置 shouldStopVibrating 变量为 true 可以立即停止震动,而调用 wx.stopVibrate() 方法可以停止正在进行的震动。根据你的具体需求,可以选择其中的一种或两种方式来关闭连续震动。
本帖de评分:
共
1
条评分
DB +10
Null.
DB
+10
2023-08-18
优秀文章
隐藏
本帖de打赏:
共
条打赏
隐藏
打赏
收藏
新鲜事
回复
引用
鲜花[
0
]
鸡蛋[
0
]
老赵.
ZxID:7272
关注Ta
注册时间
2006-09-19
最后登录
2024-11-21
发帖
23676
在线
3250小时
精华
0
DB
8474
威望
12345
保证金
800
桃子
47
鲜花
0
鸡蛋
0
访问TA的空间
加好友
用道具
发消息
加好友
他的帖子
对该用户使用道具
qq
等级:
总版主
配偶:
大小姐
啊?
举报
只看该作者
沙发
发表于: 2023-08-18
0
哇,很复杂不学了
本帖de评分:
共
0
条评分
隐藏
本帖de打赏:
共
条打赏
隐藏
回复
引用
新鲜事
鲜花[
0
]
鸡蛋[
0
]
归遇
ZxID:5231
关注Ta
注册时间
2006-09-11
最后登录
2024-11-18
发帖
9093
在线
3871小时
精华
0
DB
13575
威望
6666
保证金
0
桃子
21
鲜花
0
鸡蛋
0
访问TA的空间
加好友
用道具
发消息
加好友
他的帖子
对该用户使用道具
qq
等级:
版主
举报
只看该作者
板凳
发表于: 2023-08-18
0
感谢分享
本帖de评分:
共
0
条评分
隐藏
本帖de打赏:
共
条打赏
隐藏
点击进入
回复
引用
新鲜事
鲜花[
0
]
鸡蛋[
0
]
Null.
ZxID:171717
关注Ta
注册时间
2007-09-04
最后登录
2024-07-21
发帖
11158
在线
2514小时
精华
0
DB
113706
威望
666
保证金
0
桃子
13
鲜花
0
鸡蛋
0
访问TA的空间
加好友
用道具
发消息
加好友
他的帖子
对该用户使用道具
qq
等级:
版主
配偶:
金度延
接电脑组装配置咨询 IP查定位等
举报
只看该作者
地板
发表于: 2023-08-18
0
优秀文章
本帖de评分:
共
0
条评分
隐藏
本帖de打赏:
共
条打赏
隐藏
回复
引用
新鲜事
鲜花[
0
]
鸡蛋[
0
]
晚安
ZxID:63131
关注Ta
注册时间
2007-03-13
最后登录
2024-11-18
发帖
3764
在线
788小时
精华
0
DB
107
威望
2222
保证金
0
桃子
9
鲜花
0
鸡蛋
0
访问TA的空间
加好友
用道具
发消息
加好友
他的帖子
对该用户使用道具
qq
等级:
版主
和平精英板块欢迎您
举报
只看该作者
4楼
发表于: 2023-08-19
0
我这种人不适合
本帖de评分:
共
0
条评分
隐藏
本帖de打赏:
共
条打赏
隐藏
回复
引用
新鲜事
鲜花[
0
]
鸡蛋[
0
]
« 返回列表
发帖
回复
关闭