Отслеживание местоположения курсора. Событие mousemove. Тормоза
Привет.
Не могу понять почему тормозит стилизованный курсор. Он иногда пропадает. Мигает. Или просто "скачет" за мышкой. Плавности вообще нет. HTML: <div id="cursor"> <span></span><p>Дизайн интерьера<br>загородного дома</p> </div> <span> - на бэкграунде стоит картинка CSS: #cursor { display: block; position: absolute; top: 0; left: 0; cursor: none !important; width: 200px; height: 74px; z-index: 300; color:#fff; font:12px/14px Arial, Geneva, sans-serif; padding: 0; text-shadow:0 1px 1px rgba(0,0,0,0.4); -webkit-transition: display 1.5s ease-in-out; -moz-transition: display 1.5s ease-in-out; -o-transition: display 1.5s ease-in-out; transition: display 1.5s ease-in-out; } JS: $('#slider').mousemove(function(a){ $('#cursor').css('left', a.pageX).css('top', a.pageY); }); |
ddale,
text-shadow: уберите - (тексты прорисовывайте на фоновой картинке) И координаты считывайте чисто js http://javascript.ru/tutorial/events...entx-y-pagex-y |
Цитата:
лучше задайте курсору z-index:-1 #cursor { display: block; ...... z-index:-1 ......} |
Цитата:
По ссылке которую Вы дали используются как раз pageX/pageY. Если Вас не затруднит дайте, пожалуйста, развернутый ответ. Я неплохо верстаю, но JS у меня на уровне плинтуса. |
Цитата:
|
ddale,
Вы выставялете в стиле для курсора text-shadow:0 1px 1px rgba(0,0,0,0.4) это тень для текста, Дык - А тект для кусора большая нагрузка B) Тень для текста в курсоре огромная нагрузка Цитата:
И замечание по делу поднять курсор выше - z-index: 20000; |
Цитата:
var y=a.pageY+10; $('#cursor').css('left', a.pageX).css('top',y); |
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru" dir="ltr"> <head> <title>Активные темы</title> <script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script> <style type="text/css"> #slider_wrap { margin:20px; overflow:hidden; position: relative; width: 555px; height: 345px; padding:55px; border: #B4B4C4 dashed 1px; } #slider:hover #cursor{ opacity:1.0; } #slider{ width: 100%; height: 100%; border: #B7BEBE outset 2px; } #cursor { opacity:0.0; z-index:100; position: absolute; cursor:crosshair!important; background-image:url(http://s1.uploads.ru/i/NFXCp.png); width: 105px; height: 145px; transition-property:opacity; transition-duration: 0.3s; -o-transition-property:opacity; -o-transition-duration: 0.3s; -moz-transition-property:opacity; -moz-transition-duration: 0.3s; -webkit-transition-property:opacity; -webkit-transition-duration: 0.3s; -ms-transition-property:opacity; /* IE9+ */ -ms-transition-duration: 0.06s; } </style> </head> <body> <div id="slider_wrap"> <div id="slider"> <img src="http://s1.uploads.ru/i/MxNcZ.png" width=100% height=100%/> <span id="cursor"></span> </div> </div> <script type="text/javascript"> var Cur=$('#cursor'); $('#slider').mousemove(function(e){ Cur.css({ 'left':parseInt(e.pageX-67)+'px', 'top':parseInt(e.pageY-92)+'px' }); }); </script> </body> </html> |
Deff,
спасибо Вам :) |
Часовой пояс GMT +3, время: 18:47. |