我试图在工具栏按钮Dojo 1.8.1上发出点击事件。
<div data-dojo-type="dojox.mobile.ToolBarButton" class="backButton" moveTo="cartView" transition="slide">
我试过了
function backClick(){
var backButton = dojo.query(".backButton", dojo.byId(currentView.id))[0];
writeLog("backClick::"+backButton);
if(backButton){
var backDijit = dijit.registry.byId(backButton.id);
writeLog("backDijit::" + backDijit.id);
writeLog("emit Click");
backDijit.emit("click", {bubbles:true});
writeLog("emit mousedown");
backDijit.emit("mousedown",{bubbles:true});
writeLog("emit mouseup");
backDijit.emit("mouseup",{bubbles:true});
writeLog("touchstart");
backDijit.emit("touchstart");
writeLog("touchEnd");
backDijit.emit("touchend");
}else{
//Exit App notification
navigator.app.exitApp();
}
}
mousedown / mouseup组合在浏览器上运行。 但在设备上它不起作用(Android)。我必须发送什么事件来“点击”设备上的按钮?
答案 0 :(得分:0)
似乎触发设备上激活工具栏按钮“点击”的事件序列是touchstart,然后是touchend。
我认为您的示例不起作用,因为您发出的合成触摸事件不包含任何数据,这会使处理它的不同方法失败。
触发工具栏按钮的单击处理程序的另一种方法是调用其_onClick方法。