2015-03-08 2 views
5

Я хочу проверить, не завис ли элемент. Я получаю эту ошибку:проверьте, не зависает элемент над

Syntax error, unrecognized expression: unsupported pseudo: hover 

, когда я использую этот код:

$('.class').blur(function(){ 
    if(!$(this).is(':hover')){ 
     //element not being hovered over 
    } 
}); 

я также попытался это:

$('.class').blur(function(){ 
    if($(this+":hover").length === 0){ 
     //element not being hovered over 
    } 
}); 

это также не работает. Есть ли другой способ сделать это. Благодарю.

+1

Какой тип jQuery вы используете? Это было ошибкой в ​​jq 1.9.x. Имейте в виду, что это все еще не работает, если согласованный набор возвращает более одного элемента в любой jq-версии AFAIK **, но ** 'if (! $ (This) .is (': hover'))' будет работать 1.10.0, например –

+0

Я использую 1.9.x, потому что хочу поддержку для ie6/7/8 – user2014429

+2

Обновление до 1.11.x (последний раз?), Он по-прежнему поддерживает ie6/7/9, только ветвь 2.x удалила поддержку –

ответ

1
$(".class").mouseover(function(){ 
    $(this).attr('checked',true); 
    }); 
}); 
0

JQuery имеет эту функцию встроенного.See documentation on .hover()

$(".class").hover(
    function() { 
    // item is being hovered over 
    $(this).addClass('hover'); 
    }, function() { 
    // item is no longer being hovered over 
    $(this).removeClass('hover'); 
    } 
); 
Смежные вопросы