将元素放在数组中?

Mil*_*aan 0 javascript arrays jquery

我有个问题.我将首先发布HTML,我知道你不应该使用表格进行设计和类似的东西.但它仅用于学习目的.

<table id="placeholder">
<tr>
    <td><img src="img/1.jpg"/></td>
    <td><img src="img/2.jpg"/></td>
    <td><img src="img/3.jpg"/></td>
</tr>
<tr>
    <td><img src="img/4.jpg"/></td>
    <td><img src="img/5.jpg"/></td>
    <td><img src="img/6.jpg"/></td>
</tr>
<tr>
    <td><img src="img/7.jpg"/></td>
    <td><img src="img/8.jpg"/></td>
    <td><img src="img/9.jpg"/></td>
</tr>
<tr>
    <td><img src="img/10.jpg"/></td>
    <td><img src="img/11.jpg"/></td>
    <td><img src="img/12.jpg"/></td>
</tr>
<tr>
    <td><img src="img/10.jpg"/></td>
    <td><img src="img/11.jpg"/></td>
    <td><img src="img/12.jpg"/></td>
</tr>
</table> 
Run Code Online (Sandbox Code Playgroud)

是否可以将所有IMG放入阵列中?
这样我就可以轻松淡出我想要的图像.
假设我想摆脱第5张图片,我可以做类似的事情:
images[4].fadeOut("slow");
或类似的事情.
是否有可能做到这一点?或者有更好的方法吗?
我已经尝试var images = $('td > img');但是没有用(或者我做错了).我也在网上寻找方法,但我还没有找到任何可以帮助我的东西.希望你可以吗?
提前致谢!

Fel*_*ing 5

您可以选择所有图像

var $images = $('#placeholder img');
Run Code Online (Sandbox Code Playgroud)

如果您现在想要选择特定图像,可以使用.eq() [docs]:

$images.eq(4).fadeOut();
Run Code Online (Sandbox Code Playgroud)

$images[4]工作太多,但它并没有返回一个jQuery对象,但相应的DOM元素.因此你不能fadeOut直接打电话.


没有jQuery,您可以使用getElementsByTagName [docs]获取所有图像:

var images = document.getElementById('placeholder').getElementsByTagName('img');
Run Code Online (Sandbox Code Playgroud)

这为您提供了一个NodeListDOM元素的数组(实际上是一个),并且您无法直接fadeOut在它们上调用jQuery方法.