Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.07.2012, 18:21
Аватар для ddale
Аспирант
Отправить личное сообщение для ddale Посмотреть профиль Найти все сообщения от ddale
 
Регистрация: 04.07.2012
Сообщений: 50

Отслеживание местоположения курсора. Событие 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, 04.07.2012 в 18:27.
Ответить с цитированием
  #2 (permalink)  
Старый 04.07.2012, 18:35
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

ddale,
text-shadow: уберите - (тексты прорисовывайте на фоновой картинке)

И координаты считывайте чисто js http://javascript.ru/tutorial/events...entx-y-pagex-y
Ответить с цитированием
  #3 (permalink)  
Старый 04.07.2012, 19:01
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от ddale Посмотреть сообщение
Привет.

Не могу понять почему тормозит стилизованный курсор. Он иногда пропадает. Мигает. Или просто "скачет" за мышкой. Плавности вообще нет.
у Вас нестилизованный(курсор мыши) курсор то попадает на объект с id=slider то с id=cursor
лучше задайте курсору z-index:-1
#cursor {
    display: block;
    ......
    z-index:-1
   ......}

Последний раз редактировалось vadim5june, 04.07.2012 в 19:05.
Ответить с цитированием
  #4 (permalink)  
Старый 04.07.2012, 19:08
Аватар для ddale
Аспирант
Отправить личное сообщение для ddale Посмотреть профиль Найти все сообщения от ddale
 
Регистрация: 04.07.2012
Сообщений: 50

Сообщение от Deff Посмотреть сообщение
ddale,
text-shadow: уберите - (тексты прорисовывайте на фоновой картинке)

И координаты считывайте чисто js http://javascript.ru/tutorial/events...entx-y-pagex-y
В смысле прорисовывать на фоновой картинке?
По ссылке которую Вы дали используются как раз pageX/pageY.

Если Вас не затруднит дайте, пожалуйста, развернутый ответ. Я неплохо верстаю, но JS у меня на уровне плинтуса.

Последний раз редактировалось ddale, 04.07.2012 в 19:12.
Ответить с цитированием
  #5 (permalink)  
Старый 04.07.2012, 19:11
Аватар для ddale
Аспирант
Отправить личное сообщение для ddale Посмотреть профиль Найти все сообщения от ddale
 
Регистрация: 04.07.2012
Сообщений: 50

Сообщение от vadim5june Посмотреть сообщение
у Вас нестилизованный(курсор мыши) курсор то попадает на объект с id=slider то с id=cursor
лучше задайте курсору z-index:-1
#cursor {
    display: block;
    ......
    z-index:-1
   ......}
Спасибо, но не подходит. Теперь просто не видно курсора. Z-index у #slider тоже пробовал убирать совсем или выставлять другие отрицательные значения. Курсор как раз таки стилизованный. Там на span бэкграунд висит.
Ответить с цитированием
  #6 (permalink)  
Старый 04.07.2012, 19:12
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

ddale,
Вы выставялете в стиле для курсора text-shadow:0 1px 1px rgba(0,0,0,0.4)
это тень для текста,
Дык - А тект для кусора большая нагрузка
B) Тень для текста в курсоре огромная нагрузка
Сообщение от ddale
По ссылке которую Вы дали используются как раз pageX/pageY.
Да Используется - но не через JQ

И замечание по делу поднять курсор выше - z-index: 20000;
Ответить с цитированием
  #7 (permalink)  
Старый 04.07.2012, 19:15
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от ddale Посмотреть сообщение
Спасибо, но не подходит. Теперь просто не видно курсора. Z-index у #slider тоже пробовал убирать совсем или выставлять другие отрицательные значения. Курсор как раз таки стилизованный. Там на span бэкграунд висит.
когда Ваш курсор попадает на стилизованный курсор то событие mousemove перестает работать-если нельзя его вниз засунуть(z-index:-1) то хотя бы ниже курсора сместить пикселов на 10
var y=a.pageY+10;
  $('#cursor').css('left', a.pageX).css('top',y);
Ответить с цитированием
  #8 (permalink)  
Старый 05.07.2012, 03:21
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<!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, 05.07.2012 в 04:09.
Ответить с цитированием
  #9 (permalink)  
Старый 05.07.2012, 13:35
Аватар для ddale
Аспирант
Отправить личное сообщение для ddale Посмотреть профиль Найти все сообщения от ddale
 
Регистрация: 04.07.2012
Сообщений: 50

Deff,
спасибо Вам
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить координаты курсора в текстовом поле в пикселях prike Events/DOM/Window 4 23.05.2013 04:35
Событие "наведение курсора мыши на элемент" SilentChild Элементы интерфейса 1 05.10.2011 16:06
Отслеживание положения курсора beat Общие вопросы Javascript 4 25.06.2011 10:46