我在 Minko 库的覆盖示例中发送简单消息时遇到了一些问题。
我尝试使用这个例子的 c++ 代码而不修改它,同时我在我的 javascript 中添加了一个 Minko.addListener
。
js的代码在这里:
<html>
<head>
</head>
<body>
<script>
Minko.addEventListener("hello", function() {
/* simply replace ":" with <-----> */
document.getElementById("gameTimeLeftSeparator").textContent = "<------>"
});
</script>
<body>
<div id="content">
<div id="scoreBanner">
<div id="scoreBannerBackground"></div>
<div class="teamScore" id="teamScoreRed">0</div>
<div class="teamScore" id="teamScoreBlue">0</div>
<div class="gameTimeLeft" id="gameTimeLeftMn">0</div>
<div class="gameTimeLeft" id="gameTimeLeftSeparator">:</div>
<div class="gameTimeLeft" id="gameTimeLeftSec">0</div>
</div>
</div>
<body >
</body>
</html>
我真的不明白问题出在哪里。我添加了监听器,我的非常简单的功能(使用经典的 addListener("click", ... )
进行了测试)正在运行。
在这里,我使用由 c++ 发送的 Minko.addListener("hello", ... )
(该示例的 main.cpp 的第 113 行)。
最佳答案
您在您的应用程序中所做的是 C++/JS 消息传递的一个非常糟糕的例子,因为您可以像这样简单地使用 C++ DOM API 实现完全相同的行为:
overlay->mainDOM()->getElementById("gameTimeLeftSeparator")->textContent("<----->");
如果您要做的只是更新 DOM 元素(内容),那么上面的代码(或类似的 C++ DOM API 方法)就是可行的方法。
如果您的实际用例无法使用 C++ DOM API 实现,请相应地更新您的原始问题/示例。
无论如何,这是:
Minko.addEventListener("hello", ...
当然应该是这样的:
Minko.addEventListener("message", ...
关于javascript - 不适用于 Minko 的非常简单的 js 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29231694/