çalışmıyor benim HTMLjQuery: Burada
<div class="records" id="1">
<div class="controls">
<a class="special">
<img class="1" src="special1.png" class="shown" />
<img class="1" src="special0.png" class="hidden" />
</a>
</div>
</div>
<div class="records" id="2">
<div class="controls">
<a class="special">
<img class="1" src="special1.png" class="hidden" />
<img class="0" src="special0.png" class="shown"/>
</a>
</div>
</div>
O db alınır ne HTML çıktı olmasıdır. Ancak bir kerede, görüntülerden yalnızca biri bir kayıtta ya special1.png
ya da special0.png
olarak gösterilir, ancak kullanıcı herhangi bir a.special
tıklandığında bu kaydın special1.png
görünmesini ve diğer a.special
görüntülerinin yalnızca special0.png
görüntülemesi gerekir. Bunun için ben bu .not() yöntemi denemeye değer olacağını bu
$(".controls a").click(function() {
var action = $(this).attr('class');
var id = $(this).parent(".controls").parent(".records").attr('id');
//Now send post request and database things
//function(data) { //After this stage
$(this).children("img.1").show(); //show the active image
$(this).children("img.0").hide(); //hide the inactive image
//However this below I used :not to skip current element but it doesn't, it hides all inactive image and shows all active images
$("div:not(#"+id+") a.special img.1").hide(); //hide all the active image except this one
$("div:not(#"+id+") a.special img.0").show(); //show all the in-active image except this one
// } //
});
@mrNepal kodunuzda bir yanlışlık var, div ids olarak numaraları kullanmayın, izin verilmez ve iyi bir uygulama değildir. – kobe
@gov, ajax kullanım amacına yönelik olarak, kayıtların 'id'lerini tutmayı ne önerirsiniz? Ancak bu görünüm, – mrN
(Başka bir değer kullan) veritabanını kullanarak alındığında atanmalıdır, eğer dinamikse, bir ad verin ve sonra hayır, div ids ve sınıfları için sayılara izin verilmez ve bu da yanlış sonuçlar verebilir. Herhangi bir yeri gösterme. – kobe