首页 > 建站教程 > APP开发,混合APP >  plus怎么阻止安卓默认返回按钮的事件正文

plus怎么阻止安卓默认返回按钮的事件

    问:我按照hello h5+ 的源代码。
document.addEventListener('touchstart', function() {

return false;

}, true);

var as = 'pop-in';

function plusReady() {

plus.webview.currentWebview().setStyle({

scrollIndicator: 'none'

});

plus.key.addEventListener('backbutton', eventBackButton, false);

}



function eventBackButton() {

if (confirm('确认退出?')) {

plus.runtime.quit();

}

}

if (window.plus) {

plusReady();

} else {

document.addEventListener('plusready', plusReady, false);

}
    这样写进项目里面,安卓上测试点击弹框的取消按钮以后,APP还是退出了,但是hello h5+却不会退出,是不是我没有屏蔽安卓的退出默认事件呢?还是其他?

     答:这是很基本的事件处理问题了,在 JS 中,addEventListener() 只会增加新的执行程序,并不会覆盖原有的。 H5Plus 的 DEMO 里人家这么写是人家没引用 mui.js。你的项目里用了 MUI,它已经监听过一次 backbutton 事件了,你这么写并不能覆盖原有的事件。 如果要自定义返回逻辑,需要重写 mui.back,而不是通过 addEventListener() 添加 backbutton 事件的监听。