H5 + app监听安卓的返回或者苹果的左滑返回事件
为了实现类似列表页面进入详情页,又从详情页返回列表的操作,考虑监听手机的返回事件。
安卓的返回事件监听
首先获取到plus对象。
const callBack = ()=>{ console.log('返回时执行的操作')}
plus.key.addEventListener("backbutton",callBack);
注意,在需要的地方应该移除该事件监听,例如,之前的页面销毁时。
plus.key.removeEventListener("backbutton",callBack);
IOS的返回事件监听
IOS的左滑返回事件只能添加到当前的webview上。
//事件回调定义
const event = (ev) =>{
//start : 当左滑手势开始时触发(返回操作未生效也会触发),
//end && result 当左滑手势结束且生效(没有撤销滑动)时触发,一般都应使用该条件,而不是手势触发还未生效即执行操作。
// end 手势结束就触发(即使被撤销,即又将其左滑(从左往右)返回 从不放手又从当前位置往左滑 撤销返回)
const type = ev.type;
const result = ev.result;
if (type === 'end' && result) {
// 返回手势生效时,触发的操作
}
}
//获取到当前的webview
const wv = plus.webview.currentWebview();
wv.addEventListener('popGesture', event);
//注意,也应在适当的生命周期,将该添加的事件监听移除。