作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在网站上发布 PlayCanvas 应用程序时遇到问题。这些网站将包含用于控制 PlayCanvas 应用程序的 ui 元素。
`
btn_doSomething.addEventListener('click', function() {
app1.fire("DoSomething", "Value");
app2.fire("DoSomethingElse", "Value");
});
最佳答案
我找到了适合我的解决方案。我发布了一个网站,上面有两个 PlayCanvas“应用程序”,并通过脚本与它们进行交互。该解决方案建议将 PlayCanvas 应用程序保留在 iframe
中。因此,您可以自己托管应用程序,也可以让 PlayCanvas 为您执行此操作。另一个优点是您不必更改我们导出的项目中的任何内容。
所以HTML部分非常简单:
<div id="app1-wrapper">
<iframe id="app1-iframe" src="myApp1/index.html" frameborder="0"></iframe>
</div>
<div id="app2-wrapper">
<iframe id="app2-iframe" src="myApp2/index.html" frameborder="0"></iframe>
</div>
在JavaScript中,我从两个iframe
获取应用程序并将它们保存在变量中:
var app1_iframe = document.getElementById("app1-iframe").contentWindow;
var app1 = app1_iframe.pc.Application.getApplication("application-canvas");
var app2_iframe = document.getElementById("app2-iframe").contentWindow;
var app2 = app2_iframe.pc.Application.getApplication("application-canvas");
现在您已经可以访问该应用程序并且可以运行所有功能。对我来说,我正在向我的脚本触发事件。请记住,您必须在 PlayCanvas 应用程序中为它们创建监听器。
app1.fire('myFunctionName',value);
app2.fire('myFunctionName',value);
就是这样!我认为非常简单且非常灵活!
关于javascript - 在网站上发布(多个)PlayCanvas 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49633946/
我在网站上发布 PlayCanvas 应用程序时遇到问题。这些网站将包含用于控制 PlayCanvas 应用程序的 ui 元素。 我想在特定的 div 中发布 PC 应用程序( Canvas )。如何
我正在使用 Playcanvas 制作一个太空游戏。我想为飞行和射击的飞船添加一些人工智能。我不知道如何在 3D 空间上实现 Pathfinding.js,更不用说使用 PlayCanvas Scri
我是一名优秀的程序员,十分优秀!