jquery如何从数组中获取属性并将其传递给另一个数组

时间:2014-12-06 15:55:03

标签: jquery arrays

我有2个div容器和一些内部div。 我想要实现的是放置' rel'属性作为拇指上的背景图像...

<div class="container">
    <div class="item" rel="image_01"></div>
    <div class="item" rel="image_02"></div>
    <div class="item" rel="image_03"></div>
...
<div>

<div class="thumbs">
    <div class="thumb"></div>
    <div class="thumb"></div>
    <div class="thumb"></div>
</div>

我试图通过制作两个数组

来实现这一目标
var visuals = $('.container .item');
var visualArr = $.makeArray(visuals);

var thumbs =  $('.thumbs .thumb');
var thumbArr = $.makeArray(thumbs);

然后在每个拇指上放置一个循环:

for (var i =0; i<visualArr.length; i++){
    thumbArr[i].css('background','url("'+visualArr[i].attr('rel')+'")');
}

但那不起作用,可能是我自己做到了困难,......再次:) 任何人吗?

2 个答案:

答案 0 :(得分:0)

你可以这么简单地做到这一点

$('.item').each(function(i) {  // take the index to be used
    $('.thumbs .thumb').eq(i).css("background", 'url("' + $(this).attr("rel") + '")');
});

答案 1 :(得分:0)

原因不起作用是你没有jquery引用所以.css是未定义的。

a = $('.thumbs .thumb');
a = [<div class="thumb"></div>,<div class="thumb"></div>,<div class="thumb"></div>]

A是一个jquery obj,但如果你进入它,即a [0]你得到一个js参考     

您需要选择该项目

$(a[0])

然后你可以访问这些方法。