Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2011, 07:51   #1
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
Радость google maps kml события hover & click

Добрый день,
делаю карту полигонов, необходимо сделать изменение стилей полигона при наведении и выполнение js при клике.
Код:
<?xml version="1.0" encoding="UTF-8"?>
    <kml xmlns="http://earth.google.com/kml/2.0">
    <Document>
      <name>Пример работы с полигонами с помощью KML в Google Maps API</name>


          <Style id="style_6_n">
            <PolyStyle>
              <color>990000ff</color>
              <fill>1</fill>
              <outline>1</outline>
            </PolyStyle>
            <LineStyle>
              <color>9900ff00</color>
              <width>2</width>
            </LineStyle>
          </Style>
          <Style id="style_6_h">
            <PolyStyle>
              <color>44ff0000</color>
              <fill>1</fill>
              <outline>1</outline>
            </PolyStyle>
            <LineStyle>
              <color>4400ff00</color>
              <width>2</width>
            </LineStyle>
          </Style>

      <StyleMap id="style_6">
        <Pair>
          <key>normal</key>
          <styleUrl>#style_6_n</styleUrl>
        </Pair>
        <Pair>
          <key>highlight</key>
          <styleUrl>#style_6_h</styleUrl>
        </Pair>
      </StyleMap>

       <Placemark id="Region-6">
        <name>first</name>
        <description>
        <![CDATA[
         <script>
          alert('region-6');
         </script>
        ]]>
        </description>
        <styleUrl>#style-6</styleUrl>
        <MultiGeometry>
         <Polygon>
           <outerBoundaryIs>
             <LinearRing>
             <coordinates>
-8.63144031249999, 42.0515147266766, 0
-8.88412585937499, 41.8615622952929, 0
-8.91159167968749, 42.1177624286029, 0
-8.64517322265624, 42.2983171559511, 0
-8.88000598632811, 42.2381048620336, 0
-8.80516162597655, 42.3421063918364, 0
-8.66062274658202, 42.4163514168869, 0
-8.69547000610351, 42.4635726866411, 0
-8.73439422332763, 42.4024015106243, 0
             </coordinates>
             </LinearRing>
           </outerBoundaryIs>
         </Polygon>
        </MultiGeometry>
      </Placemark>
Проблема в том, что это не работает
код "ховера" взял из примера из документации, он там был для маркера...
Выполнение js при клике, отдельная песня. При клике гугль выводит описание полигона с названием, и судя по документации вырезает html.
Карта выводится не в айфрейме, так что кросс-доменных запросов нет (с простыми api-шными полигонами и линиями аякс работает).
Может кто сталкивался с этим делом и может подсказать что не так в коде и как вообще правильно это делается? Буду рад ссылкам на статьи и документацию.
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 28.12.2011, 09:41   #2
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Код:
var markersKML = new google.maps.KmlLayer('http://mundomir.ru/users/gm/google.kml?' + timestamp);
markersKML.setMap(map);
google.maps.event.addListener(markersKML, 'click', function (kmlEvent) {
   var text = kmlEvent.featureData.description;
   alert(text);
});
Событие привязывается как обычно, только уже не к карте, а к слою KML.
featureData дает доступ к объекту, по всей видимости можно юзать любые свойства объекта КМЛ.
Спасибо за внимание, может кому-нибудь пригодится=)
Alar, верни репу!
Naive вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ya maps/google maps djetx Работа с сетью в Delphi 1 10.04.2011 21:19
работа с google maps krok JavaScript, Ajax 0 26.08.2010 18:07
Google Maps API RMEN JavaScript, Ajax 0 24.05.2010 16:40
кеш google maps bazanin Работа с сетью в Delphi 3 17.03.2010 17:27
Трехмерные панарамы в google maps. Вадим Буренков Свободное общение 2 22.01.2010 18:51