Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.07.2014, 10:12
Новичок на форуме
Отправить личное сообщение для mrdeath4 Посмотреть профиль Найти все сообщения от mrdeath4
 
Регистрация: 17.07.2014
Сообщений: 9

Не верно работает onmove в canvas.Подскажите плиз!
Доброго утра,
Хочу сделать, чтобы на нарисованной сетке в канвасе, при наведении на определенный квадрат, он подсвечивался.

http://learn.javascript.ru/play/35puh
вот в этой штуке, оно работает, но работает немного не так как я планировал.




У меня на странице, оно вообще не работает:
http://www.ravak.kiev.ua/aksiya/td2.html

для удобства вот код:
var tower1 = document.getElementById('tower1');
tower1.onclick = function ()
{
 build('tower1');
 createTower = true; 
} 

canvas.onmouseover = function ()
{
  mouseMove(event);
  if (createTower){ 
    context.fillStyle = "#29FF37";
    context.fillRect(ingameX*cellSize + ingameX, ingameY*cellSize + ingameY, cellSize, cellSize);
  }
} 


function build(tower)
{
  document.getElementById(tower).disabled = 'true';

  
}

function mouseMove(e)
{
  var mouseX, mouseY;

if (e.offsetX){
	mouseX = e.offsetX - canvas.offsetLeft;
	mouseY = e.offsetY - canvas.offsetTop;
}
else if (e.layerX){
	mouseX = e.layerX;
	mouseY = e.layerY;
}

ingameX = Math.floor((mouseX - Math.floor(mouseX/cellSize))/cellSize);
ingameY = Math.floor((mouseY - Math.floor(mouseY/cellSize))/cellSize);



}


Подскажите что я неверно сделал?

Последний раз редактировалось mrdeath4, 18.07.2014 в 10:16.
Ответить с цитированием
  #2 (permalink)  
Старый 18.07.2014, 14:09
Новичок на форуме
Отправить личное сообщение для mrdeath4 Посмотреть профиль Найти все сообщения от mrdeath4
 
Регистрация: 17.07.2014
Сообщений: 9

есть тут кто-то?
Ответить с цитированием
  #3 (permalink)  
Старый 18.07.2014, 18:42
Аватар для ixth
Профессор
Отправить личное сообщение для ixth Посмотреть профиль Найти все сообщения от ixth
 
Регистрация: 19.01.2010
Сообщений: 354

У тебя событие на mouseover висит. Оно отрабатывает один раз, когда мышь пересекает границу канваса. Вот так работает как надо вроде: http://learn.javascript.ru/play/traBQb
Ответить с цитированием
  #4 (permalink)  
Старый 18.07.2014, 18:49
Новичок на форуме
Отправить личное сообщение для mrdeath4 Посмотреть профиль Найти все сообщения от mrdeath4
 
Регистрация: 17.07.2014
Сообщений: 9

Сообщение от ixth
У тебя событие на mouseover висит. Оно отрабатывает один раз, когда мышь пересекает границу канваса. Вот так работает как надо вроде: http://learn.javascript.ru/play/traBQb
Спасибо огромное! Вы гений.
Ответить с цитированием
  #5 (permalink)  
Старый 18.07.2014, 18:51
Новичок на форуме
Отправить личное сообщение для mrdeath4 Посмотреть профиль Найти все сообщения от mrdeath4
 
Регистрация: 17.07.2014
Сообщений: 9

А почему аналогичный код не работает на сайте?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не верно работает onclick. Подскажите плиз mrdeath4 Общие вопросы Javascript 10 17.07.2014 15:52
Замена значения в store страно работает I3ev ExtJS 0 09.12.2012 14:22
jQyery функция странно работает! Midel Общие вопросы Javascript 4 08.04.2012 13:40
Не работает код внутри циклов DZHETIGAPA Events/DOM/Window 1 21.06.2011 01:03
Динамическая HTML форма (FireFox - работает, IE - не работает) dm1tr1y Общие вопросы Javascript 10 11.12.2009 15:59