javascript - 如何修复未在 createjs 中的画布上显示的预加载资产?
问题描述
我正在尝试通过将背景设置为画布然后尝试将我的资产移动到背景图像上来创建动画。我能够在画布中显示背景图像,还能够预加载我的所有资产。但是,我无法在画布上显示任何资产。
我试图玩弄我试图显示的位图的坐标,以防它显示在可见区域之外。我也试过检查更新阶段的时机是否有问题,但没有运气。任何帮助,将不胜感激。
function set()
{
var cgroup = new createjs.Container();
cgroup.x = 100;
cgroup.y = 100;
// var path = 'img/cloud1.png';
var img = preload.getResult("c1");
console.log(img.src); //displaying correct preloaded file
var cloud1 = new createjs.Bitmap(img);
cgroup.addChild(cloud1);
cloud1.x = 120;
cloud1.y = 120;
cloud1.regX = 62;
cloud1.regY = 62;
stage.addChild(cgroup);
stage.update();
}
解决方案
您需要调用该函数以使其运行。例如,这适用于页面加载时。
window.onload() = function(){
var cgroup = new createjs.Container();
cgroup.x = 100;
cgroup.y = 100;
// var path = 'img/cloud1.png';
var img = preload.getResult("c1");
console.log(img.src); //displaying correct preloaded file
var cloud1 = new createjs.Bitmap(img);
cgroup.addChild(cloud1);
cloud1.x = 120;
cloud1.y = 120;
cloud1.regX = 62;
cloud1.regY = 62;
stage.addChild(cgroup);
stage.update();
};
推荐阅读
- javascript - 有什么方法可以在不使用事件总线的情况下在不相关的 Vue 组件之间传递数据?
- javascript - 如何使用异步操作维护订阅者的顺序
- reactjs - 为什么 findOneAndUpdate 运行 .then 即使返回的对象为空?猫鼬
- c# - 序列化/反序列化 01-01-1970 之前的 UTC 日期时间
- c# - 如何使物体向目标移动,然后向另一个目标移动?
- java - 检查数组中的值是否在范围内
- macos - 无法从 cronjob 签署 MacOS 应用程序
- javascript - 如何从 dijit/form/select 中删除所有选项?
- javascript - 如何在javascript中存储对变量的引用?
- java - 在 Spring Boot 中设置 tomcat connectionUploadTimeout