Показать сообщение отдельно
  #9 (permalink)  
Старый 05.07.2013, 06:00
Профессор
Отправить личное сообщение для mta88 Посмотреть профиль Найти все сообщения от mta88
 
Регистрация: 16.05.2013
Сообщений: 229

Сообщение от IVAAAAN Посмотреть сообщение
Никто ничего не посоветует?
у вас все обработчики событий кривые
когда они запускаются, они получают событие
а вы объявили их с переменной "tool" и думаете, что они получат тот же "tool" что и функция "startDraw"

сохраните "tool" в замыкании функции "startDraw" и используйте его оттуда
function startDraw(tool) {
  var my_tool = tool; // вот здесь
  ...
  cnvs.addEventListener('mousemove', function(e) {
    ...
    switch(my_tool) {
      ...
    }
    ...
  });
}


но даже переменная "my_tool" необязательна

function startDraw(tool) {
  ...
  cnvs.addEventListener('mousemove', function(e) {
    ...
    switch(tool) {
      ...
    }
    ...
  });
}
Ответить с цитированием