Можно проверить, наводится ли курсор на элемент.
Что-то вроде
$("#divId").is("hover");
ПРИМЕЧАНИЕ. Я просто хочу проверить не установленное событие.
Можно проверить, наводится ли курсор на элемент.
Что-то вроде
$("#divId").is("hover");
ПРИМЕЧАНИЕ. Я просто хочу проверить не установленное событие.
.is(':hover');
или
$('#divId:hover');
Обновленный ответ!
$("#foo").hover(function() {
$(this).data("hovered", true);
}, function() {
$(this).data("hovered", false);
});
Тестирование, если оно зависает...
if ( $("#foo").data("hovered") ) {
// it is hovered
} else {
// it not hovered
}
Вы можете использовать jQuery hover()
, mouseenter()
или mouseover()
$("#divId").hover(function() { alert("hovering"; });
Это приведет к срабатыванию мыши и мыши. Вы можете добавить отдельные обработчики событий для каждого.
Итак, если вы хотите сделать что-то вроде if hovering over #divId increase x by one, and when you stop hovering decrease y by one
:
$("#divId").hover(function() { ++x; },
function() { --y; });
Если вы действительно хотите if hovering
:
var hovering = 0;
$("#divId").hover(function() { hovering = 1; },
function() { hovering = 0; });
...
// Then inside somewhere useful. Maybe in a setInterval, or triggered by
// another action...
if (hovering) { ...
Например:
$(function() {
var hovering = 0;
$("div").hover(function() { hovering = 1; },
function() { hovering = 0; });
$(document).keyup(function() {
if (hovering) alert("hovering!"); // This is the "if hovering"
else alert("not hovering.");
});
});
Вы можете использовать . hover(). Его можно использовать так:
$("selector").hover(
function (){
//mouse over
},
function (){
//mouse out
}
);
Пример использования этого документа из документации:
$("li").hover(
function () {
$(this).append($("<span> ***</span>"));
},
function () {
$(this).find("span:last").remove();
}
);
В зависимости от того, что вы делаете, mouseover()
(http://api.jquery.com/mouseover/) или hover()
(http://api.jquery.com/hover/) может быть полезно.