在Cordova应用程序中发射事件

Har*_*hit 2 javascript events javascript-events cordova

我试图从浏览器手动触发cordova中的事件(后退,暂停,恢复等)(用于调试).我是按照以下方式进行的:

$(window).trigger('backbutton');
Run Code Online (Sandbox Code Playgroud)

当我们使用注册事件处理程序时 $(document).on('backbutton', handlerCode);

backbutton事件被触发,但是当我们使用cordova文档中的语法注册它时

document.addEventListener("backbutton", onBackKeyDown, false);
Run Code Online (Sandbox Code Playgroud)

事件处理程序未被触发.我在使用时注意到这一点$(window).trigger('backbutton'),代码没有点击cordova.js文件.从浏览器调用cordova应用程序中的事件的正确方法是什么?

Har*_*hit 6

可以从浏览器触发事件​​.为了触发事件,需要fireWindowEvent或fireDocumentEvent.

要触发暂停,恢复,在线,离线,后退按钮,menubutton,searchbutton,startcallbutton,endcallbutton,volumeupbutton,volumedownbutton,请使用fireDocumentEvent.例如,发射'暂停'事件: -

cordova.fireDocumentEvent('pause',{});
Run Code Online (Sandbox Code Playgroud)

要触发与电池相关的事件,请使用fireWindowEvent.例如,发射'batterycritical'事件: -

cordova.fireWindowEvent('batterycritical', {"level":"20","isPlugged":true});
Run Code Online (Sandbox Code Playgroud)