Появление блока по наведению
Здравствуйте. Подскажите как решить такую задачку. Нужно чтобы при наведении на картинку-ссылку в нужном блоке div появлялась информация по которой также можно кликать и т.д. Проблем реализовать появление при наведении нет, но проблема в том, что ссылки-картинки расположены в 2 ряда и если навести на картинку из нижнего ряда, то информация появившаяся для этого блока пока будешь вести мышку до нее может исчезнуть, так как легко зацепить другую ссылку-картинку.
Ссылка на сайт Там где сейчас написан текст "Оригинальные запчасти" и должна появляться инфа, а ссылки картинки - под ней. Вот такая реализация у меня, как переписать с учетом проблем описанных выше: Почему хочется именно при наведении? Потому что при клике хочется вывести модальное окно с формой. Также при клике в появившемся блоке будет так же выходить модальное окно с формой. Поэтому и хочется сделать появление при наведении, если возможно. |
Batyabest,
сделайте задержку -- полсекунды на картинке - тогда инфа и нет Цитата:
|
Задержку на исчезновение или на появление? А тогда если пользователь специально "шарится" по иконкам, чтобы посмотреть что там и там - задержка не будет критична?
|
Задержка перед появлением, пауза на mouseenter
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title> - jsFiddle demo by werty1001</title> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <style type='text/css'> a{color:#00F;border-bottom:dotted 1px blue;margin:0 10px} a:hover{color:#333;border:#333;cursor:pointer} .help{width:100px;height:100px;display:inline-block;background:#eee;padding:20px;margin:0 10px;opacity:0} .help.active{opacity:1} </style> <script type='text/javascript'> $(window).load(function() { var id, pause = 300; $("body").on("mouseenter", "[data-help]", function(b) { id = $(this).data("help"); this.pause = pause; $(this).stop(!0).animate({ pause: 0 }, pause, function() { id == $(this).data("help") && ($(".help").removeClass("active"), $(id).addClass("active")) }) }).on("mouseleave", "[data-help]", function(b) { id = null }) }); </script> </head> <body> <a data-help="#log1">Ссылка №1</a> <a data-help="#log2">Ссылка №2</a> <br /><br /> <div id="log1" class="help">Блок 1</div> <div id="log2" class="help">Блок 2</div> </body> </html> |
Да, отлично, спасибо огромное!
|
Часовой пояс GMT +3, время: 18:49. |