<分区>
标签 javascript jquery html css
<分区>
我目前的目标是通过在每个时间间隔稍微移动 div 元素来为其设置动画。 (我想在没有 jQuery 的“动画”功能的情况下这样做)
为此,我首先制作这样的元素数组:
var elements = $('.vz_container div.vz_element');
,我在更新函数中这样使用它:
function update()
{
for (var ei = 0; ei < elements.length; ++ei)
{
elements[ei].style.top += "10px";
elements[ei].style.left += "10px";
}
}
,然后我这样创建间隔:
setInterval(update, 1000);
虽然,“更新”功能似乎确实每秒钟都会被调用一次,但 div 在我的屏幕上只移动一次,其余时间都会留在那里。
我不知道哪里出了问题。
最佳答案
您每次都将字符串 10px
附加到 CSS 属性,而不是实际递增。
相反,尝试:
function update()
{
for (var ei = 0; ei < elements.length; ++ei)
{
elements[ei].style.top = parseInt(elements[ei].style.top) + 10 + "px";
elements[ei].style.left = parseInt(elements[ei].style.left) + 10 + "px";
}
}
关于javascript - setInterval 和 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27474340/
相关文章:
javascript - 有人能解释一下我的 JavaScript 错误在哪里吗?
javascript - Immutable.js 的额外缩小?
javascript - 在 jquery easy ticker 元素 IE8、IE9、IE10、IE11 内的侧边栏中剪切的文本
javascript - 将日期转换为时间戳以在 javascript 中存储到 firebase firestore
javascript - Sidr 面板的打开和关闭动画不流畅,在智能手机上出现抖动现象
jquery - 如何使用 javascript/jquery/AJAX 调用 Django REST API?
c# - 使用大写和小写标记解析 HTML Agility Pack?