我正在开发一个组件,可以在点击图像时显示数组中的信息。
在没有详细介绍的情况下,对于我显示的12个图像中的每个图像,它们都具有与HTML中的该插槽相关的某些ID。因此#person_0
与#bio_0
,#close_0
等相关联。#person_1
与#bio_1
,#close_1
等相关联。
我现在遇到的问题是找到一种循环jQuery的有效方法,类似于下面的内容:
$( "#close_0" ).click(function() {
$( "#bio_0" ).hide();
});
$( "#close_1" ).click(function() {
$( "#bio_1" ).hide();
});
$( "#close_2" ).click(function() {
$( "#bio_2" ).hide();
});
而不是写这12次,是否有一个简单的方法来循环这个?我清楚的是如何将变量传入div id(即#close_0
- 其中0将是变量)。
任何提示?
答案 0 :(得分:0)
理想情况下,如果这些元素有一个类,那么你可以$( ".someclass" ).click(...
如果没有,你可以按这样的方式循环:
for(var i=0; i<12; i++)
{
$( "#close_"+i ).click(function() {
$( "#bio_"+i ).hide();
$( "[id^=person_]" ).removeClass("active");
});
}
PS。我不明白你要用removeClass做什么,如果这与你附加的元素有关,请点击事件