Содержание:
.on( "mouseenter" [, eventData ], handler )Возвращает: jQuery
Описание: Связывает обработчик событий, который будет вызван при входе курсора мыши в элемент.
-
версия добавлена: 1.7.on( "mouseenter" [, eventData ], handler )
Эта страница описывает событие mouseenter. Для устаревшего метода .mouseenter(), см. .mouseenter().
Событие mouseenter JavaScript является собственностью Internet Explorer. Из-за общей полезности этого события jQuery моделирует это событие, чтобы оно могло быть использовано независимо от браузера. Это событие отправляется элементу, когда указатель мыши входит в элемент. Любой HTML-элемент может получать это событие.
Например, рассмотрим HTML:
<div id="outer">
Outer
<div id="inner">
Inner
</div>
</div>
<div id="other">
Trigger the handler
</div>
<div id="log"></div> Обработчик событий можно привязать к любому элементу:
$( "#outer" ).on( "mouseenter", function() {
$( "#log" ).append( "<div>Handler for `mouseenter` called.</div>" );
} ); Теперь, когда указатель мыши перемещается над элементом Outer <div>, сообщение добавляется в <div id="log">. Вы также можете вызвать событие при нажатии на другой элемент:
$( "#other" ).on( "click", function() {
$( "#outer" ).trigger( "mouseenter" );
} ); После выполнения этого кода щелчки по Спустить обработчик также будут добавлять сообщение.
Событие mouseenter отличается от mouseover тем, как оно обрабатывает всплытие событий. Если mouseover использовалось в этом примере, то когда указатель мыши перемещался над элементом Inner, обработчик срабатывал бы. Это обычно нежелательное поведение. Событие mouseenter , с другой стороны, вызывает свой обработчик только тогда, когда курсор мыши попадает в элемент, к которому он привязан, а не в его потомков. Таким образом, в этом примере обработчик срабатывает при входе курсора мыши в элемент Outer, но не в элемент Inner.
Пример:
Показать текст при срабатывании событий mouseenter и mouseout. mouseover срабатывает, когда указатель перемещается в дочерний элемент, а mouseenter срабатывает только тогда, когда указатель перемещается в связанный элемент.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>on demo</title>
<style>
div.out {
width: 40%;
height: 120px;
margin: 0 15px;
background-color: #d6edfc;
float: left;
}
div.in {
width: 60%;
height: 60%;
background-color: #fc0;
margin: 10px auto;
}
p {
line-height: 1em;
margin: 0;
padding: 0;
}
</style>
<script src="https://code.jquery.com/jquery-3.7.0.js"></script>
</head>
<body>
<div class="out overout">
<p>move your mouse</p>
<div class="in overout"><p>move your mouse</p><p>0</p></div>
<p>0</p>
</div>
<div class="out enterleave">
<p>move your mouse</p>
<div class="in enterleave"><p>move your mouse</p><p>0</p></div>
<p>0</p>
</div>
<script>
var i = 0;
$( "div.overout" )
.on( "mouseover", function() {
$( "p", this ).first().text( "mouse over" );
$( "p", this ).last().text( ++i );
} )
.on( "mouseout", function() {
$( "p", this ).first().text( "mouse out" );
} );
var n = 0;
$( "div.enterleave" )
.on( "mouseenter", function() {
$( "p", this ).first().text( "mouse enter" );
$( "p", this ).last().text( ++n );
} )
.on( "mouseleave", function() {
$( "p", this ).first().text( "mouse leave" );
} );
</script>
</body>
</html> Демо:
.trigger( "mouseenter" )Возвращает: jQuery
Описание: Вызвать событие "mouseenter" на элементе.
-
версия добавлена: 1.0.trigger( "mouseenter" )
- "mouseenter"Тип: строкаСтрока
"mouseenter".
-
См. описание для .on( "mouseenter", ... ).