1
我使用Javascript来通过变换从画布中心到左上角的圆进行翻译。接下来我要做的是调用一个函数,在画布中选取随机坐标并发送它们进行平移,以便它的位置可以移动。不幸的是,这是行不通的。可能在同一元素上使用两次翻译?
你只能在CSS中的元素上调用一次转换吗?这是我要来的结论,但我一直无法找到文档中的信息,说这种类型的行为不是允许的。
事情的心脏:
function change_level() {
var level = document.getElementById("level");
level.parentNode.removeChild(level);
var ball = document.getElementById("init_pos");
ball.style.backgroundColor = "orange";
ball.style.borderRadius = "25px";
ball.style.transform = "translate(-600%, -647%)";
setTimeout(ball_movement(ball), 3000);
ball.style.transition = "background-color 2s ease-in, transform 3s ease";
}
function ball_movement(ball) {
var movements = 5;
var x;
var y;
for (var i = 0; i < movements; i++) {
x = getRandomArbitrary(-800, 800);
y = getRandomArbitrary(-800, 800);
ball.style.transform = "translate("+x+", "+y+")";
ball.style.transition = "transform 3s ease";
console.log(x);
}
}
发布我的代码的jsfiddle,虽然我的计算是比的jsfiddle校园较大,因此不能正常工作。
https://jsfiddle.net/2c5gwbcd/
'的setTimeout(ball_movement(球),3000);'常见错误。 –