• 회원가입
  • 로그인
  • 구글아이디로 로그인

[Event] JQ - mouseover() 메서드 - 마우스오버이벤트 (= mouseover이벤트 = mouseover메서드 마우스오버 메서드) ※ 이벤트 발생 시 실행함수 적을 때 주의사항.

목차

  1. mouseover() 예제 - 마우스커서가 요소 위에 위치 시 배경색 변경
  2. mouseover() 정의
  3. mouseover() 구문
  4. mouseover() 예제 - cf. mouseenter(), mousemove()
  5. 이벤트 발생 시 실행 함수 적을 때 주의사항

 

mouseover() 예제 - 마우스커서가 요소 위에 위치 시 배경색 변경

 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("p").mouseover(function(){

    $("p").css("background-color", "yellow");

  });

  $("p").mouseout(function(){

    $("p").css("background-color", "lightgray");

  });

});

</script>


<p>홈짱닷컴 Homzzang.com</p>

 

결과보기

 

mouseover() 정의

 

mouseover 이벤트는 마우스커서가 선택 요소 위에 있을 때 발생.

※ mouseover() 메서드는 2가지 작동 가능.

① mouseover 이벤트 촉발.

② mouseover 이벤트 발생 시 실행할 함수 연결.

 


 

1. cf.

 

mouseover() 메서드

: 마우스커서가 선택 요소 및 자식 요소에 들어가면 이벤트 발생.

 

mouseenter() 메서드

: 마우스커서가 선택 요소에 들어갈 때만 이벤트 발생.

 

2.

mouseout() 메서드와 주로 함께 사용됨.

 

 

mouseover() 구문

 

mouseover 이벤트 촉발.

$(selector).mouseover()

 

mouseover 이벤트에 함수 연결.

$(selector).mouseover(function)

 


[매개변수]

 

function

선택. mouseover 이벤트 발생 시 실행할 함수 지정.

 

 

mouseover() 예제 - cf. mouseenter(), mousemove()

 

<style>

div {

  width: 200px;

  height: 100px;

  border: 1px solid black;

  margin: 10px;

  float: left;

  padding: 30px;

  text-align: center;

  background-color: lightgray;

}

h3 {background-color: white; padding:20px;}

span {display;block; color:red;}

</style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>

var x = 0;

var y = 0;

var z = 0;

$(document).ready(function(){

  $("div.over").mouseover(function(){

    $(".over span").text(x += 1);

  });

  $("div.enter").mouseenter(function(){

    $(".enter span").text(y += 1);

  });

  $("div.move").mousemove(function(){

    $(".move span").text(z += 1);

  });

});

</script>



<div class="over">

  <h3>Mouseover 횟수: <span></span></h3>

</div>


<div class="enter">

  <h3>Mouseenter 횟수: <span></span></h3>

</div>


<div class="move">

  <h3>Mousemove 횟수: <span></span></h3>

</div>

 

결과보기


PS.

 

mouseover 이벤트

: 마우스커서가 div, h3 각각 들어갈 때 이벤트 발생.

 

mouseenter 이벤트

: 마우스커서가 div 들어갈 때만 이벤트 발생.

 

mousemove 이벤트

: 마우스커서가 div 위에서 1px 움직일 때마다 이벤트 발생.

 

 

이벤트 발생 시 실행 함수 적을 때 주의사항

 

지역함수 방식으로 실행 함수 기재하면, 정상 작동 X.

※ 지역함수 : 함수(=메서드) 안에 함수를 정의하는 형태.



[방법1]

 

<script src="http://code.jquery.com/jquery-latest.js"></script>


<style>

.hz {width:100px; height:100px; }

.r {background: red;}

.b {background: blue; display: none;}

</style>


<div class="hz r"></div>

<div class="hz b"></div>


<button onmouseover="r()">red</button>

<button onmouseover="b()">blue</button>


<script>

//$(document).ready(function() { <-- 이 부분 있으면 작동 X

  function r(){

     $('.hz').css('display','none'); $('.r').css('display','block');

  }

  function b(){

     $('.hz').css('display','none'); $('.b').css('display','block');

  }

//}); <-- 이 부분 있으면 작동 X

</script>


결과보기


[방법2] 

아래처럼 전역함수 형태로 정의 후, 호출할 때만 함수 안에 넣어야 함.

 

<script src="http://code.jquery.com/jquery-latest.js"></script>

<style>

.hz {width:100px; height:100px; }

.r {background: red;}

.b {background: blue; display: none;}

</style>

<div class="hz r"></div>

<div class="hz b"></div>

<button onmouseover="r()">red</button>

<button onmouseover="b()">blue</button>

<script>

$(document).ready(function() {

  r();  //굳이 부르겠다면 이렇게

  b();

});

function r(){

    $('.hz').css('display','none'); $('.r').css('display','block');

}

function b(){

    $('.hz').css('display','none'); $('.b').css('display','block');

}

</script>

 

결과보기 

균이 님, 플래토 님 (190918) https://sir.kr/qa/323817



분류 제목
HTML_CSS JQ - offset() 메서드 ★ - 오프셋 (=xy좌표) 설정/반환. (= offset메서드 = 오프셋메…
HTML_CSS JQ - outerHeight() 메서드 - 요소 높이 반환 (height + padding + border…
HTML_CSS JQ - outerWidth() 메서드 - 요소 너비 반환 (※ padding, border 둘다 포함) (…
HTML_CSS JQ - position() 메서드 - 부모요소 기준으로 요소 위치 반환 (= position메서드 = 포지…
HTML_CSS JQ - prepend() 메서드 - 선택요소 안 시작부분에 내용 삽입 (= prepend메서드 = 프리펜드…
HTML_CSS JQ - prependTo() 메서드 - 선택요소 시작부분에 HTML 요소삽입 (= prependTo메서드 …
HTML_CSS JQ - prop() 메서드 - 속성과 속성값 설정/반환. (= prop메서드 = 프랍메서드 = 프롭메서드)…
HTML_CSS JQ - remove() 메서드 - 선택요소 제거 (= remove메서드 = 리무브 메서드)
HTML_CSS JQ - removeAttr() 메서드 - 1개 이상의 속성 제거 (= removeAttr메서드 = 리무브어…
HTML_CSS JQ - removeClass() 메서드 ★ - 클래스 제거 (= removeClass메서드 = 리무브클래스…
HTML_CSS JQ - removeProp() 메서드 - prop() 메서드로 설정된 속성 제거. (= removeProp…
HTML_CSS JQ - replaceAll() 메서드 - 선택요소를 새 HTML 요소로 대체 (= replaceAll메서드…
HTML_CSS JQ - replaceWith() 메서드 ★ - 선택요소 내용를 새 내용으로 대체/변경 (= replaceW…
HTML_CSS JQ - scrollLeft() 메서드 - 선택요소 가로 스크롤바 위치 설정/반환 (= scrollLeft메…
HTML_CSS JQ - scrollTop() 메서드 ★ - 선택요소 세로 스크롤바 위치 설정/반환 (= scrollTop메…
HTML_CSS JQ - text() 메서드 - 선택요소 텍스트 내용설정/내뇽변경/내용반환. (= text메서드 = 텍스트메…
HTML_CSS JQ - toggleClass() 메서드 ★★★ - 클래스추가/제거 상호전환. (= toggleClass메서…
HTML_CSS JQ - unwrap() 메서드 - 부모요소 제거 (= unwrap메서드 = 언랩 메서드)
HTML_CSS JQ - val() 메서드 ★★★ - value속성 값설정/값반환 (= val메서드 = 밸메서드) ※ 밸류메…
HTML_CSS JQ - width() 메서드 ★★★ - 요소 너비 설정/반환. (= width메서드 = 위드스메서드)
10/15
목록
찾아주셔서 감사합니다. Since 2012