【发布时间】:2015-03-12 15:56:03
【问题描述】:
我在画布中生成 5 个带有 for 循环的圆圈,我想给它们一个类,以便我可以用 jquery 控制它们,但我做错了什么。你们能弄清楚发生了什么吗?
var stage;
var quantity = 6,
width = 60,
height = 60,
circles = [];
function init(){
stage = new createjs.Stage("myCanvas");
stage.width = 500;
stage.height = 600;
createjs.Ticker.setFPS(60);
createjs.Ticker.addEventListener("tick", onTick);
setupGame();
}
function setupGame() {
for(var i = 0; i < quantity; i++) {
var circle = document.createElement("img");
circle.setAttribute('src', 'images/circles/circle'+i+'.png');
circle.className = "circle";
circle.style.position = "absolute";
circle.style.left = Math.floor((Math.random() * 100)) + "%";
circle.style.top = Math.floor((Math.random() * 100)) + "%";
circle.style.width = width + "px";
circle.style.height = height + "px";
document.body.appendChild(circle);
circles.push(circle);
}
}
function onTick(e){
stage.update(e);
}
新版本。在 JonnyD 的帮助下,我现在有了一个功能循环。唯一的问题是图像被附加到身体上,而不是我的舞台上。我已经尝试过 stage.appendChild(circle),但它不起作用。
这是一个在线资源的链接,你们可以查看一下 = LINK
【问题讨论】:
-
当然,我添加了项目的在线链接。
-
圆圈不是 DOM 对象,您应该使用相对于 createjs 库的方法。您应该阅读 DOC 并看到,不幸的是,我无法在这方面为您提供更多帮助
-
实际上我想要实现的是能够在渲染后 3 秒通过 css 更改图像/圆圈(它们是 png 的)的背景位置。但我首先尝试了更简单的事情,比如隐藏和展示它们。有什么想法吗?
-
您可以使用 jCanvas 图层来实现(使用“名称”作为 ID,使用“组”作为类)
标签: javascript jquery html canvas createjs