코드 질문좀 하려구요,,, 채택완료
/// 1번 $(".section_tab li a img").click(function(){if (!$(this).hasClass("active")){$(this).attr("src", $(this).attr("src").replace("off","on"));} else {$(this).attr("src", $(this).attr("src").replace("on", "off"));}}); ///2번 $(".section_tab li a img").click(function(){if (!$(this).hasClass("active")){$(".section_tab li a img").attr("src", $(this).attr("src").replace("on", "off"));$(this).attr("src", $(this).attr("src").replace("off","on"));} else {$(this).attr("src", $(this).attr("src").replace("on", "off"));}});
이코드를 사용하였습니다.
클릭했을때 이미지 이름이 off 일땐 on으로 on일땐 off로 바뀌는것으로요,,
1번 코드를 사용하니까 off였던 이미지가 on은 되는데 이전 그림이 다시 돌아가지않아요..
그래서 2번 코드를 보시면 this가 아닌 이미지 자체를 바꾸려고 했거든요,,
근데 모든 이미지가 바뀌어버려요,,
제말이 조금 어렵나요?
제가 하고싶은건,
이미지 속성에 접근해서 클릭한 이미지만 on으로 나머지는 off로 바뀌고 싶어요
addclass / removeclass 같은거로요,,
어떻게 하는게 좋을까요?
답변 2개
html 어떻게 생겼는지 보여 주세요.
php 코드 들어간 html 코드 말고 브라우저에서 소스 보기로 본 코드요.
실제 페이지 주소가 제일 좋겠지만요.
답변에 대한 댓글 4개
$(function() {
$(".section_sub_tab li img").on("click", function() {
$(".section_sub_tab li img").each(function() {
$(this).attr("src", $(this).attr("src").replace("on", "off"));
});
$(this).attr("src", $(this).attr("src").replace("off", "on"));
});
});
[/code]
이렇게 하시면 되지 않을까 싶네요.
근데 class="active2"는 어떤 경우에 들어가는 건가요?
원래는 텍스트로 작성되었었거든요 이미지 부분이....
그래서 addclass사용하느라 active2가 있었습니다..
each가 하는역할이 정확이 뭔가요? ㅠㅠㅠㅠㅠㅠㅠ
".section_sub_tab 밑에 li 밑에 img들을 전부 갖고 아우르겠다"로 보시면 이해하기 편할 겁니다.
댓글을 작성하려면 로그인이 필요합니다.
$(".section_tab li a img").attr("src", $(this).attr("src").replace("on", "off"));
지금 현재 선택자로 $(".section_tab li a img") 를 잡으시는데
li a lmg 태그가 여러개 있는것 아닌가요?
몇번째의 img태그의 이미지를 바꿀지 넣어주면 될것같은데
답변에 대한 댓글 1개
$this.addClass(test);
이코드는 누른것만 코드먹고 이전에는 클래스를 지워라 잖아요?
그거처럼 ㅠ 이전이미지는 off가 되라, 로 하고싶거든요,,
하나하나 지정하지 않고,,
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
<ul class="section_sub_tab after">
<li class="active2"><img src="img/sub/btn0_off.jpg" /></li>
<li><img src="img/sub/btn1_0_off.jpg" /></li>
<li><img src="img/sub/btn2_off.jpg" /></li>
<li><img src="img/sub/btn3_off.jpg" /></li>
</ul>
[/code]
이렇게 생겼습니다.
클릭한 이미지만 on으로 바뀌었으면 좋겠습니다..