我创建了一个投资组合,其中每个图像元素都有一个列表项。我想要以下内容:单击图像,获取其数据属性值,并仅在具有相同数据属性值的li项上运行脚本的其余部分。有点像这样:
var data1 = $("#portfolio li").data('descriptionid');
var data2 = $('.img-description').data('description');
$('#portfolio li').click(function(){
$(".img-description").data("img").stop()
.animate({
"left" : '0px'
}, 400);
});
<div id="portfolio">
<ul>
<li><img src="img1.jpg" width="320px" data-descriptionid="img1"></li>
<li><img src="img2.jpg" width="320px"></li>
</ul>
</div>
<div id="idc">
<ul>
<li class="img-description" data-description="img1">
<p>
Lorem ipsum dolor sit amet, consectetur
</p>
</li>
</ul>
</div>
</div>
我感觉变量不应该在外面,我需要在点击特定项目时将数据存储在变量中。我该如何进一步处理?谢谢你的帮助。
答案 0 :(得分:1)
最简单的,我建议:
$('#portfolio li').click(function(){
$('.img-description[data="' + $(this).data('descriptionid') + '"]').stop()
.animate({
"left" : '0px'
}, 400);
});