Teşekkür Kip, yineleme ya bir işlev içinde ilişkilendirerek iken aynı kullanarak $ (this) elde etmek için arıyor olabilir olanlar için:
$("label[for="+$(this).attr("id")+"]").addClass( "orienSel" );
Bu projeyi çalışan iken bir süre baktı ama bu aynı sorunu çözmek için arıyor olabilir başkalarına yardımcı olur umarım böylece iyi bir örnek bulamadık.
Yukarıdaki örnekte, benim hedefi radyo girişlerini gizlemek ve bir yağmurluk kullanıcı deneyimi (akış şeması yönünü değiştirerek) sağlamak için etiketleri stil oldu.
Sen olabilir burada bir örnek görmek
Eğer örnek isterseniz, buraya css geçerli:
.orientation { position: absolute; top: -9999px; left: -9999px;}
.orienlabel{background:#1a97d4 url('http://www.ifreight.solutions/process.html/images/icons/flowChart.png') no-repeat 2px 5px; background-size: 40px auto;color:#fff; width:50px;height:50px;display:inline-block; border-radius:50%;color:transparent;cursor:pointer;}
.orR{ background-position: 9px -57px;}
.orT{ background-position: 2px -120px;}
.orB{ background-position: 6px -177px;}
.orienSel {background-color:#323232;}
ve JavaScript ilgili kısmı:
function changeHandler() {
$(".orienSel").removeClass( "orienSel" );
if(this.checked) {
$("label[for="+$(this).attr("id")+"]").addClass( "orienSel" );
}
};
Etiket verilen orijinal soruya alternatif kök, giriş izler, sen ... bir saf css çözeltisi ile gidip tamamen JavaScript kullanarak önleyebilirsiniz:
input[type=checkbox]:checked+label {}