非常简单的js测试,不适用于Minko



我在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", ...

cf此答案

相关内容

  • 没有找到相关文章

最新更新