获得更多元素属性自定义

时间:2013-11-29 00:37:10

标签: jquery

代码:

<div id="gallery" data-image="img_folder/g1.jpg"></div>
<div id="gallery" data-image="img_folder/g2.jpg"></div>
<div id="gallery" data-image="img_folder/g3.jpg"></div>
<div id="gallery" data-image="img_folder/g4.jpg"></div>
<div id="gallery" data-image="img_folder/g5.jpg"></div>

CSS:

<style type="text/css">
#gallery { width:100px; height:100px; background-size:cover; }
</style>

jquery:

var el = $("#gallery");
var img = el.attr("data-image");

for(i=0; i<=el.length; i++) {
    el.css({ "backgroundImage": "url("+img+")" });
}

但是,图像不显示给div,没有成功任何想法???

1 个答案:

答案 0 :(得分:1)

元素的第一个ID必须是唯一的,请使用class

<div class="gallery" data-image="img_folder/g1.jpg"></div>
<div class="gallery" data-image="img_folder/g2.jpg"></div>
<div class="gallery" data-image="img_folder/g3.jpg"></div>
<div class="gallery" data-image="img_folder/g4.jpg"></div>
<div class="gallery" data-image="img_folder/g5.jpg"></div>

.gallery { width:100px; height:100px; background-size:cover; }

然后

$('.gallery').css('backgroundImage', function(){
    return 'url(' + $(this).data('image') + ')';
})

演示:Fiddle