javascript - 如何将此 jquery 数组重写为 javascript
问题描述
我正在尝试仅在没有 jquery 部分的情况下用 javascript 重写此代码。
var imgs = $.makeArray($("#images img"));
imgs.reverse();
function crossfade() {
TweenMax.to(imgs[0], 1, { autoAlpha: 0, scale: 1 });
TweenMax.to(imgs[1], 1, { autoAlpha: 1, scale: 1.2 });
imgs.push(imgs.shift());
}
var cycle = setInterval(crossfade, 3000);
尤其是下面的部分。
var imgs = $.makeArray($("#images img"));
imgs.reverse();
解决方案
用 获取图像document.querySelectorAll
,然后将它们放入一个数组中(正如@rojo 在他的评论中所说)并反转该数组的顺序。
var images = document.querySelectorAll("#images img"), //get the images as nodelist
images = Array.from(images), //transform the nodelist to an array
images = images.reverse() //reverse the array
// proceed with images...
推荐阅读
- ruby-on-rails - 我如何在rails中使用嵌套的where条件
- angular - 打字稿中的 typeof 运算符
- java - SQLException: [SQLITE_ERROR] SQL error or missing database (no such table:staffreg)
- r - Rcpp 与 Rmarkdown?编译时出错
- postgresql - PostgreSQL, Prevent alter materialized view changing WITH NO DATA to WITH DATA
- codeigniter - 将 url 参数发送到 codeigniter 中的站点
- ansible - Ansible play book external parameter getting converted to unicode
- azure - Azure ADD 隐藏默认 URL 并使用 C# 显示所需的 URL
- c# - 无法将数据填充到 Web api 控制器中
- php - 循环访问表单中的 POST 变量