我正在开发这个 Windows 8 测试应用程序,并且正在使用网格应用程序模板。在 itemDetail.html 中,我有以下 HTML 代码(我删除了该 div 中的所有其他代码并添加了此按钮,html 的其余部分保持不变):
<div class="item-info">
<button id="menuLink">Get me the menu</button>
</div>
我在 itemDetail.js 的 Pages.define 函数的 ready 成员中添加了以下 JS 代码:
var menuButton = document.getElementById("menuLink");
menuButton.setAttribute("onclick", "menuButtonClickHandler()");
该menuButtonClickHandler()
函数在 Pages.define 函数之后声明,代码如下:
function menuButtonClickHandler() {
var messageDialog = new Windows.UI.Popups.MessageDialog("Here's your menu");
}
当我单击按钮时,出现以下异常:
0x800a1391 - JavaScript 运行时错误:“menuButtonClickHandler”未定义
我想在哪里“定义”这个功能?该模板正在使用该函数已经存在的 JS 文件中的所有其他代码,因此该函数应该可供它使用。
同样出于某种奇怪的原因,如果我使用,我什至无法添加事件addEventListener
:
menuButton.addEventListener("click", buttonClickHandler, false);