evalJS代替mui.fire
2024-09-08 09:16:43
之前一直用mui.fire调用自定义事件以达到监听目标窗口的目的。
页面为双webview,页面跳转时
mui.openWindow({
url: '../choose/food-choose-content.html',
id: 'food-choose.html',
show: {
autoShow: false
}
})
;目标页
window.onload = function() {
mui.plusReady(function() {
plus.nativeUI.closeWaiting();
mui.currentWebview.show("slide-in-right", 300);
});
};
但是最近客户反馈发现,如果在目标页停留时间过长,mui.fire失效。官方文档也没有给出解决方案。之后我发现WebviewObject中有个evalJS
,可在Webview窗口中执行JS脚本。
var detailPage = null;
document.getElementById("savefood").addEventListener('tap',function(){
var data=$.JSONToString(foodArray.reverse());
localStorage.setItem("foodData", data);
if (!detailPage) {
detailPage = plus.webview.getWebviewById('apply_content');
}
detailPage.evalJS('bindfoodlist();');//跳转页中定义bindfoodlist方法
//console.log(detailPage.isPause);
// mui.fire(detailPage, 'bindfoodlist', {
// foodData: data
// });
var self = plus.webview.currentWebview();
plus.webview.hide(self);
plus.webview.close(self);
});
测试后成功。
最新文章
- React Native之ListView使用
- python标准模块(os及sys模块)
- 安装confluence
- xp 共享 guest
- 奇葩app大盘点,你知道几个
- php网站在服务器上邮件发送不了,在本地可以
- get 和 post 请求的区别,一个不错的链接
- mysql join优化原理
- Database in BioInformation
- win7安装Ubuntu变双系统以及删除Ubuntu分区操作
- html学习_表格、表单
- DB2 sql报错后查证原因与解决问题的方法
- 从零开始学Kotlin-类和对象(5)
- 微信小程序——1、文件的认识
- 前端:jQuery笔记
- StringIO-将字符串当做文件处理
- [机器学习] ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)
- duilib : 滑动显示的窗口实现以及 悬浮窗 (转载)
- 根据用户id生成一个唯一邀请码
- Java Class Object