Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.02.2013, 11:04
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Возможно ли отловить событие на area от программного клика/наведения на мап-карте ?
Желателен пример кода или ссылка... (нужно реализовать демонструшку движения объекта по дороге с отсканированных карт аэрофотосъемки.
Ответить с цитированием
  #2 (permalink)  
Старый 12.02.2013, 11:13
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Deff, ты никогда не пользовался addEventListener ? Ему без разницы, настоящее ли событие, или фэйковое, обрабочтик вызывается в любом случае.
Ответить с цитированием
  #3 (permalink)  
Старый 12.02.2013, 11:24
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

danik.js,
мало пользовался - напиши вариацию ?

Вот код для мап сегодняшний:
Программный клик регистрируется только на img, а если кликнуть руками - то на всех уровнях
<!DOCTYPE HTML>
<html>
  <head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
  </head>
  <body>




<script type="text/javascript">
var onlineUserList=[]; // Cписок Юзеров и их локаций
//$(document).ready(function(){ });
function Funk (){ //Функция, исполняемая по загрузке карты

var Areas=[], ArrSpan=[]
 $("#karta-00 area").each(function(i){
          $(this).wrap('<span id="Span'+i+'" style="display:inline:block;bopder:red solid 1px;z-index:100;display:inline-block;position:relative" onclick="alert('+i+'Span)"></span>');
          $(this).get(0).setAttribute('onclick','alert(\''+i+'X\')');
          var a=$(this).parent();//
          var a=$(this).parents('#karta-00')


 });

          alert('top Карта:'+$("img").position().top+'  Left Карта:'+$("img").position().left+'\n Высота'+$("img").height()+' Ширина: '+$("img").width());

//alert(document.elementFromPoint(247,214).length)
$(document.elementFromPoint(247,214)).click()//alert(alert(click();
$( 'map' ).on( 'click', 'area', function( e ) {

    alert( e.target.title );

});

}
</script>
<div  id="div" style="z-index:99;position:absolute width:100%;height:100%;bopder:red solid 1px;" onclick="alert('Клик по #div')">
<map style="z-index:100;position:relative"  id="karta-00" name="karta" style="z-index:100;position:relative" >
<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="Просматривает «Кто сейчас на форуме»" onclick="alert('Клик по «Кто сейчас на форуме»')">
</map>
<img src="http://s017.radikal.ru/i416/1302/69/20132fd94fd6.jpg" style="z-index:0;position:relative" usemap="#karta" border="0" onload="Funk()" onclick="alert('Увидел, что был Клик по img usemap')/**/">
</div>

  </body>
</html>


Суть в том, что document.elementFromPoint(247,214) генерит событие на img usemap, которое не завязано на тег map при программном клике(кроме Хрома), в отличие от клика руками

Последний раз редактировалось Deff, 12.02.2013 в 13:05.
Ответить с цитированием
  #4 (permalink)  
Старый 12.02.2013, 11:44
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Deff, если честно, я тебя не понимаю. document.elementFromPoint не генерит ничего. Помимо click() есть еще и dispatchEvent.
При запуске твоего скрипта появляются какие-то непонятные цифры и знаки. Если объяснишь более ясно что к чему - буду рад помочь.
Ответить с цитированием
  #5 (permalink)  
Старый 12.02.2013, 11:54
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Может можно кликать программно иначе, чем через document.elementFromPoint(X,Y)
Ответить с цитированием
  #6 (permalink)  
Старый 12.02.2013, 12:00
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от danik.js
Если объяснишь более ясно что к чему - буду рад помочь.
Есть карта, нужно программно кликнуть по координатам X,Y на карте и получить href из area
(Можно программное наведение курсором, вместо клика

Последний раз редактировалось Deff, 12.02.2013 в 12:02.
Ответить с цитированием
  #7 (permalink)  
Старый 12.02.2013, 12:32
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Чем тебе не нравится document.elementFromPoint(X,Y) ?
Ответить с цитированием
  #8 (permalink)  
Старый 12.02.2013, 12:35
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

danik.js,
Да пофег что - ну не работает, как заставить, не знаю, вот спрашиваю..
Ответить с цитированием
  #9 (permalink)  
Старый 12.02.2013, 13:10
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Как это не работает? Ты как новичек. Почему не работает?
Ответить с цитированием
  #10 (permalink)  
Старый 12.02.2013, 13:47
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

я хз, то или не то ты хотел

http://gmoryes.bplaced.net/event.html

Смысл: нажимаешь на кнопку и при клике на див, в котором есть 4 картинки, всегда будет находиться только та картинка, которую ты выбрал
__________________
оляля, ололо
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отловить событие simple Events/DOM/Window 3 11.05.2011 13:20