【发布时间】:2021-04-14 08:59:45
【问题描述】:
如果我创建一个循环来动态添加在 transform 上进行转换的元素,为什么这个示例不起作用:
function changeSize() {
for (let x = 0; x < 99; x++) {
let el = document.createElement('div');
el.style.translate = 'transformX(0px)';
el.style.translate = 'transformX(150px)';
el.style.transition = 'all 2s ease';
let body = document.body;
body.appendChild(el);
}
}
但这确实有效,只要我添加一个非常小的超时:
function changeSize() {
for (let x = 0; x < 99; x++) {
let el = document.createElement('div');
el.style.translate = 'transformX(0px)';
// now it will transition
setTimeout(() => {
el.style.translate = 'transformX(150px)';
el.style.transition = 'all 2s ease';
}, 50)
let body = document.body;
body.appendChild(el);
}
}
【问题讨论】:
标签: javascript css