gpt4 book ai didi

Javascript UWP - 我如何为不在主 html 页面中的按钮插入处理程序?

转载 作者:太空宇宙 更新时间:2023-11-04 09:44:28 24 4
gpt4 key购买 nike

我使用 Visual Studio 2015,已更新。我创建了一个新的 UWP-js 应用程序:我有 index.htmldefault.cssmain.js .我有一个名为 play 的按钮,它带有一个已注册的 eventListener,它会更改窗口并可视化另一个 HTML 页面,另一个名为 quit 的按钮会关闭窗口。main.js 的代码是:

(function () {
"use strict";
var app = WinJS.Application;
var activation = Windows.ApplicationModel.Activation;
var isFirstActivation = true;

app.onactivated = function (args) {
if (args.detail.kind === activation.ActivationKind.launch) {

} else {
if (args.detail.previousExecutionState == activation.ApplicationExecutionState.terminated) {

}
}

if (!args.detail.prelaunchActivated) {

}

if (isFirstActivation) {

document.addEventListener("visibilitychange", onVisibilityChanged);
args.setPromise(WinJS.UI.processAll());

var playbutton = document.getElementById("play");
playbutton.addEventListener("click", playhandler, false);
var quitbutton = document.getElementById("quit");
quitbutton.addEventListener("click", closeApp, false);
}

isFirstActivation = false;
};

function onVisibilityChanged(args) {
if (!document.hidden) {

}
}

app.oncheckpoint = function (args) {

};

function playhandler(eventInfo) {//apro la tavola da disegno
window.location("drawTable.html");
}

function closeApp(eventInfo) {//chiudo l'app
window.close();
}

app.start();

})();

当我点击播放按钮时,会出现另一个 HTML 页面 (drawTable.html),其中有一个名为 backbutton 的按钮。现在我希望在单击时返回到 index.html 页面。我在哪里可以注册这个按钮的处理程序?我尝试在放置此函数的位置创建另一个 js 文件:

function backbuttonHandler() {
window.location("index.html");
}

我也用 html 写过:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="lib/winjs-4.0.1/js/base.js"></script>
<script src="lib/winjs-4.0.1/js/ui.js"></script>
<link href="/css/drawTable.css" rel="stylesheet" />
<script type="text/javascript" src="/js/drawTable.js"></script>
</head>
<body>
<center>
<button class="myButton" id="backbutton" onclick="backbuttonHandler()">back</button>
</center>
</body>
</html>

但它不起作用!

最佳答案

Now I want that on click, I return to index.html page. Where can I register the handler of this button? ...but it doesn't work!

它不起作用,因为 UWP 出于安全原因不支持内联 javascript。所以像 <button class="myButton" id="backbutton" onclick="backbuttonHandler()">back</button> 这样的代码不会触发 backbuttonHandler .

要解决这个问题,您需要在 JS 中附加事件处理程序:

window.onload = function () {
document.getElementById("backbutton").onclick = function (evt)
{
window.location("index.html");
}
}

还有一个建议:如果你想创建一个真正的 UWP 应用程序,强烈建议将你的应用程序设为 Single Page Application。 .

关于Javascript UWP - 我如何为不在主 html 页面中的按钮插入处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39596647/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com