자바스크립트 css 변경
본문
<script>
function changeStyle() {
var rotate = $(this).css("transform");
if(rotate === "rotate(0.5turn)"){
$(this).css("transform", "");
} else {
$(this).css("transform", "rotate(0.5turn)");
}
}
</script>
이렇게 만들었습니다.
만든 목적은 changeStyle()를 클릭할때마다 엘리먼트가 회전을 반복하는 것을 만들고 싶었는데요
현실은 작동이 안되네요 ㅠㅠ
뭐가 잘못된걸까요?
!-->
답변 3
아마 요소에 onclick="changeStyle();" 이렇게 함수 실행시키셨을텐데
$(this) 를 사용하시고 싶으시면 그 요소의 아이디 혹은 클래스 등으로
$('#~~').click(function() {
.... //여기에 함수 내용 들어가면 될거같네요
}
function changeStyle() {
// $(this) 대신에 $("#원하시는 대상의 id 값') 이렇게 사용해 보세요.
var rotate = $(this).css("transform");
클릭하는 버튼을 돌리시는 거라면
<button onclick="changeStyle( this);" ... >
changeStyle( e)으로 하고 안에서 this 대신 e 파라미터를 사용하시면 됩니다.
답변을 작성하시기 전에 로그인 해주세요.