Активная мини-карта
Имеется 2 канваса для рисования с загруженной на них картинкой. Первый - карта, второй - миникарта.
Помогите настроить перемещение по карте зажатой кнопкой мыши, а не на баттонах, установленных ниже канваса. Плюс, так же перемещение миникарты совместно с перемещением основной карты. В джваскрипте совсем новичок, очень жду вашей помощи. Весь исходник:
<html>
<head>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<style type="text/css">
body {
</style>
<script type="text/javascript">
}
}
</script>
<body>
</body>
</html>
|
EvIIIL,
addEventListener('mousedown', function(event) {}) addEventListener('mousemove', function(event) {}) event.pageX event.pageY |
Цитата:
пытался вставить в функцию onload - не вышло, перед ней - все дропается. Внутренние параметры функции какие писать? сейчас сижу, учу JS, а пока что рассчитываю только на вас:-? |
EvIIIL,
Трудно) Короче 1) Приведи свой код к единому стилю. Над каждой функцией напиши что она делает, какие параметры передаются и что она возвращает. Ты офигеешь как проще будет работать и что-то выяснять 2) Это тебе просто идея на посмотреть. Пихай туда где канвас определяешь
var isMoving = false;
canvas.addEventListener('mousedown', function(event) {
// event - объект события, в нем много интересной фигни
// попробуй console.log(event) и увидишь
// event.pageX, event.pageY - координаты `места` события
console.log(event.pageX);
console.log(event.pageY);
isMoving = true;
});
canvas.addEventListener('mouseup', function(event) {
isMoving = false;
});
canvas.addEventListener('mousemove', function(event) {
if (isMoving) {
moveIm(event.pageX, event.pageY);
};
});
3) Чуть поправь для демонстрации
function moveIm(dx,dy){
x0 = dx;
y0 = dy;
|
Цитата:
теперь проблема в ее функционировании) при передвигании канваса картинка сдвигается в третью часть экрана, то бишь координаты видимо забиваются отрицательные, и собственно при следующем нажатии начинает двигать не с того места куда передвинул, то бишь не запоминает текущие координаты я человек совестливый, не хочу показаться наглым, и просить помощи абсолютно в каждом действии. Сидел сейчас, разбирался полтора часа, так ничего и не пришло в голову. В шарпе уж давно бы решение пришло, но это для меня ново, а диплом-то сам не напишется:( |
EvIIIL,
Цитата:
Цитата:
Цитата:
|
Цитата:
|
|
| Часовой пояс GMT +3, время: 03:21. |