기본적으로 내 선택에 따라 클래스를 변경하려고합니다. 처음 변경하면 클래스가 black
에서 colored
으로 변경되지만 다시 변경하면 및 colored
으로 유지됩니다.addClass else else do not properly 올바르게 작동하지 않는 경우
내가 변경 될 때 모든 클래스를 제거한 후 hover()
을 다시 호출하면 누가이 문제가 발생하는지 설명 할 수 있습니까? 그러면 내 선택에 따라 클래스를 적용해야합니다. 분명히 removeClass
메서드에 대한 주석을 제거하면 작동하지만, 왜 필자는 그것을 필요로하는지 이해하지 못합니다. 미리 감사드립니다.
HTML :
<form>
<select name="color">
<option value="black-white">Black/White</option>
<option value="colored">Colored</option>
</select>
<input type="checkbox" checked>Borders (on/off)
</form>
jQuery를 :
function hover() {
var color = $("select[name=color]").val();
if (color === "black-white") {
$("#container > div").hover(function() {
/*$(this).removeClass("colored");*/
$(this).addClass("black");
});
} else if (color === "colored") {
$("#container > div").hover(function() {
/*$(this).removeClass("black");*/
$(this).addClass("colored");
});
}
}
$("select[name=color]").change(function() {
$("#container > div").removeClass();
hover();
});
HTML로 업데이트하여 HTML뿐만 아니라 –
를 제공하는 내부 값을 확인하십시오. – rizbo61
'# container' 엘리먼트는 어디에 있습니까? – showdev