2013-11-26 23 views
0

我創造了這個片斷在一個簡單的PhoneGap 3.1的應用程序,基於jQuery Mobile的彈出文檔上:Phonegap + JQuery Mobile:如何從Android菜單按鈕觸發彈出窗口?

<div data-role="popup" id="popupMenu" data-theme="e"> 
    <ul data-role="listview" data-inset="true" style="min-width:210px;" data-theme="e"> 
     <li><a href="javascript:loadHelp()">Help</a></li> 
     <li><a href="javascript:loadAbout()">About</a></li> 
    </ul> 
</div> 

<a href="#popupMenu" data-rel="popup" data-role="button"> 
    Click for menu 
</a> 

點擊按鈕,打開菜單。

我也有這個片段在外部.js文件:

$(document).ready(function() { 
    document.addEventListener("menubutton", onMenuKeyDown, false); 
}) 

function onMenuKeyDown() { 
    alert("Menu key pressed!"); 
    // what goes here?  
} 

按下菜單按鈕,打開警報,所以我知道聽者工作。現在,我想將一些代碼添加到onMenuKeyDown()函數中,以便在第一個代碼片段中顯示按鈕加載的菜單。該代碼需要相當於點擊

<a href="#popupMenu" data-rel="popup">Click here</a> 

我該怎麼做?

謝謝。

回答

2

嗯,我找到了一個方法來做到這一點。它的工作,但它似乎有點哈克。歡迎其他方式提出建議。

首先,原始鏈接不可見的,給它一個ID:

<a href="#popupMenu" style="display: none;" id="hammerTime" data-rel="popup" data-role="button" > 
    Can't touch this! 
</a> 

然後有菜單鍵點擊隱形鏈接:

function onMenuKeyDown() { 
    // alert("Menu key pressed!"); 
    $("#hammerTime").click()  
} 

希望別人會發現沿着這個有用辦法。

相關問題