Мне нужно применить анимацию для каждого «div». Но он применяется только в первом, а не во всех. По мне «$ (« # viewport »). Each (appendTo (c)); эта строка не работает в javascript-коде.appendTo не работает с каждым в jquery
HTML код:
<div id="viewport"></div>
<div id="viewport"></div>
<div id="viewport"></div>
Javascript код:
$(window).load(function(){
$(function() {
var a = 0;
for (; a < 15; a += 1) {
setTimeout(function b() {
var a = Math.random() * 1e3 + 5e3,
c = $("<div />", {
"class": "smoke",
css: {
opacity: 0,
left: Math.random() * 200 + 80
}
});
**$("#viewport").each(appendTo(c));**
$.when($(c).animate({
opacity: 1
}, {
duration: a/4,
easing: "linear",
queue: false,
complete: function() {
$(c).animate({
opacity: 0
}, {
duration: a/3,
easing: "linear",
queue: false
})
}
}), $(c).animate({
bottom: $("#viewport").height()
}, {
duration: a,
easing: "linear",
queue: false
})).then(function() {
$(c).remove();
b()
});
}, Math.random() * 3e3)
}
}());
});
Это не так ['each()'] (http://api.jquery.com/each/) работает: он принимает функцию в качестве аргумента. Проверьте наличие ошибок в браузере (F12). – Kenney
почему вы даете одинаковый идентификатор для всех div, пожалуйста, используйте общий класс для всех div –
Потому что анимация такая же для всех div. Вот почему я дал одинаковый идентификатор для всех. Хорошо, если вы так говорите, я обновляю. – Learner