Вывод курсора jquery
Мне нужна простая анимация слайдов вниз/вверх по мыши над ссылкой. Я могу заставить мышь работать, но я не могу понять, как заставить mouseout делать это.
Здесь у меня есть эффект зависания:
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.3.2"); //load version 1.3.2 of jQuery
google.setOnLoadCallback(function() {
jQuery(
function($) {
$("a.button").hover(function(){$(this).animate({"marginTop": "0px"}, "fast")
});
});
});
</script>
Как мне получить это для перемещения поля до 16 пикселей при выводе мыши?
Ответы
Ответ 1
Событие hover в jQuery требует 2 функции обратного вызова: один, когда указатель перемещается по элементу, и один, когда он уходит:
$(item).hover(function() { ... }, function() { ... });
В вашем случае:
$("a.button").hover(
function() {
$(this).animate({"marginTop": "0px"}, "fast");
},
function() {
$(this).animate({"marginTop": "16px"}, "fast");
}
);
Ответ 2
В новых версиях jQuery ( >= 1.7) вы также можете использовать этот подход:
$("a.button").on('mouseenter',function(){
$(this).animate({"marginTop": "0px"}, "fast");
});
$("a.button").on('mouseleave',function(){
$(this).animate({"marginTop": "16px"}, "fast");
});
По-моему, это более чистый подход, и он также использует новую функцию .on() (здесь)
Ответ 3
Упрощенное решение:
$("a.button").hover(function() {
$("a.button").css("cursor","pointer");
});