12.02.2013, 15:55
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
Сообщение от danik.js
|
Как это не работает? Ты как новичек. Почему не работает?
|
danik.js,
Есть код карты:
<div id="div">
<map id="karta-00" name="karta >
<area href="/" shape="rect" coords="0,0,250,150" title="В оглавлении форума">
<area href="/f1-forum" shape="rect" coords="250,0,500,150" title="Ваш первый форум">
<area href="/viewonline" shape="rect" coords="0,150,500,300" title="Просматривает «Кто сейчас на форуме»">
</map>
<img src="http://s017.radikal.ru/i416/1302/69/20132fd94fd6.jpg" style="z-index:0;position:relative" usemap="#karta" border="0" onload="LoadFunk()">
</div>
Покажи как "дедушка" ...
|
|
12.02.2013, 15:58
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
9xakep,
CПС, но нужно имхо через тег <map>, ибо позиционировать img на каждую аэрофотосъемку - не айс(да и при кривой дороге их нужно несколько) - а оцифровка регионов в геодезии - автомат
Нужно показать как объект движется по дороге,я позиционирую драг - программно и смотрю не упираюсь ли в край региона текущего ареа, т.е нужно отслеживать программное наведение или клик на конкретную точку
1. Есть MaП-карта,
Нужно: Задать координаты программно(вводим координаты в инпут) и программно кликнуть по данным координатам на карте
и получить href из area
Последний раз редактировалось Deff, 12.02.2013 в 16:09.
|
|
12.02.2013, 16:09
|
|
сегодня в 12:34|Комментир
|
|
Регистрация: 12.04.2011
Сообщений: 1,180
|
|
Deff,
так а в чем проблема собрать координаты в массив например:
var coords = [[0,0,250,150], [250,0,500,150], [0,150,500,300], 0]
Последний элемент массива - это то куда нужно "тыкнуть"
В обработчике просто сделать проверку, если последний элемент равен "-1", например, тогда х,у взять из event, иначе взять координаты элемента с индексом
coords[coords.length-1], и тыкнуть по нему
__________________
оляля, ололо
|
|
12.02.2013, 16:13
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
9xakep,
Сотни карт, координаты могут быть круговыми, сотни регионов на карте
Нун делать всю ту же задачу, что браузер уже выполнил, для клика наведения по ареа
есть точка и полсотни area cо сложными регионами (не квадраты - и не прямоугольники) ( этот эскиз просто с форум поддержки
(По координатам имхо сделал, но не Айс)
|
|
12.02.2013, 16:36
|
|
сегодня в 12:34|Комментир
|
|
Регистрация: 12.04.2011
Сообщений: 1,180
|
|
хм... странно, я наконец-то понял, что ты хочешь) Попробовал сделать, почему-то он при клике находит img у которой z-index = 0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<script type="text/javascript">
window.onload = function () {
var map = document.getElementById('map');
var c = [214,37]
map.addEventListener('click', function (e) {
alert(document.elementFromPoint(c[0],c[1]).title)
},false)
}
</script>
<div id="div" style="z-index:99;position:absolute width:100%;height:100%;bopder:red solid 1px;">
<map style="z-index:100;position:relative" id="map" name="karta" style="z-index:100;position:relative" >
<area style='z-index:101;' href="/" shape="rect" coords="0,0,250,150" title="В оглавлении форума">
<area href="/f1-forum" shape="rect" coords="250,0,500,150" title="Ваш первый форум">
<area href="/viewonline" shape="rect" coords="0,150,500,300" title="Просматривает «Кто сейчас на форуме»" />
</map>
<img src="http://s017.radikal.ru/i416/1302/69/20132fd94fd6.jpg" style="z-index:0;position:relative" usemap="#karta" border="0" onclick="alert('Увидел, что был Клик по img usemap')/**/">
</div>
</body>
</html>
Ан, нет, такая шняга работает только в хроме, в мозиле, как уже было сказано ранее, она почему-то первой находит img
__________________
оляля, ололо
Последний раз редактировалось 9xakep, 12.02.2013 в 16:39.
|
|
12.02.2013, 16:51
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
Сообщение от 9xakep
|
Ан, нет, такая шняга работает только в хроме, в мозиле, как уже было сказано ранее, она почему-то первой находит img
|
Вот - Вот
|
|
12.02.2013, 16:54
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
Сообщение от 9xakep
|
Попробовал сделать, почему-то он при клике находит img у которой z-index = 0
|
z-indexами баловался, пытаясь приподнять <map> тег над img, но тщетно, походу этот тег не участвует в действе без наведения рукой юзера
|
|
12.02.2013, 17:06
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Сообщение от Deff
|
Возможно ли отловить событие на area от программного клика/наведения на мап-карте ?
|
зачем, если ты сам (программно) наводишь?
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
12.02.2013, 17:11
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Сообщение от Deff
|
1. Есть MaП-карта,
Нужно: Задать координаты программно(вводим координаты в инпут) и программно кликнуть по данным координатам на карте
и получить href из area
|
Походу по координатам ты не получишь арею в ФайрФоксе...
Придется тебе вычислять нужную арею перебирая все, основываясь на shape и coords ...
|
|
12.02.2013, 17:15
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
nerv_,
Как определить к какому area принадлежит?
Area не прямоугольники
Двигаюсь по дороге на карте (серпантин для верности) пытаюсь тестить следующую точку - в пределах ли она дороги, нет возвращаюсь, чуть меняю вектор и снова тестирую
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Отловить событие |
simple |
Events/DOM/Window |
3 |
11.05.2011 14:20 |
|
|
|