Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Yandex API (всплывающее окно при клике на ссылку в балуне) (https://javascript.ru/forum/jquery/21330-yandex-api-vsplyvayushhee-okno-pri-klike-na-ssylku-v-balune.html)

dimi007 05.09.2011 17:53

Yandex API (всплывающее окно при клике на ссылку в балуне)
 
Не могу реализовать всплывающее окно при клике на ссылку в балуне. Карту вставить на сайт получается, скрипт всплывающего окна написал , но вот сделать так чтобы при клике по ссылке которая находится в балуне появлялся всплывающий див...у меня не получается....может кто знает как ...выкладываю код:

<!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" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="stylesheet" href="styles.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="modal.css" type="text/css" media="screen" charset="utf-8" />
<script src="jquery.1.2.6.js" type="text/javascript" charset="utf-8"></script>
<script src="jquery.smartmodal.js" type="text/javascript" charset="utf-8"></script>
<script src="http://api-maps.yandex.ru/1.1/index.xml?key=КЛЮЧ" type="text/javascript"></script>
<script type="text/javascript">

$(document).ready(function() {

	$('.modal').smart_modal(); 

});


        window.onload = function () {
            var map = new YMaps.Map(document.getElementById("YMapsID"));
            map.setCenter(new YMaps.GeoPoint(37.420604, 54.916672), 10);
			
			
			
			// Создает метку в центре Москвы
var placemark = new YMaps.Placemark(new YMaps.GeoPoint(37.420604,54.916672));

// Устанавливает содержимое балуна
placemark.name = "Серпухов";
placemark.description = "<a rel='rel_modal_content' class='modal' href='#'>asdfsd</a>";

// Добавляет метку на карту
map.addOverlay(placemark); 
			
			
			
        }
    </script>
<title>jQuery Modal Example - UPDATED AGAIN</title>
</head>
<body>
<div id="container">
  <p><a href="#" rel="rel_modal_content" class="modal">Click me</a></p>
  <div id="rel_modal_content" class="hidden">
    <embed width="700" height="400" name="plugin" src="pano.swf" type="application/x-shockwave-flash"> 
  </div>
</div>
<script type="text/javascript">

</script>
<div id="YMapsID" style="width:600px;height:400px"></div>
</body>
</html>


ребят посомтрите...может кто сталкивался с подобной проблемой...

DjDiablo 05.09.2011 18:49

посмотри что в ready
console.log($('.modal')) вернёт ?
или alert($('.modal').html()); если Null то можно думать дальше, если html надо смотреть что твой smart_modal не устраивает.

так мы выясним дело в плагине smart_modal, или недоступности элемента с классом modal

Триви 05.09.2011 19:01

Что обозначает вот этот код?

$(document).ready(function() {

$('.modal').smart_modal();

});


и зачем у тебя два обработчика для события window.onLoad ???

DjDiablo 05.09.2011 19:11

Дас а обработчика и вправду два.
И поправьте меня, но по моему создание 2го через .load исключает дальнейший вызов 1го ready.

Триви 05.09.2011 19:21

Не нужно брать такой сложный инструмент как api яндекс карты
и сразу прикручивать к нему какие то плагины..
Делай чистый код, потом уже наворачивай..
В этом api и так до чёрта всего наворочено..
Глянь у них в документации хотя бы z-индексы,
которые по умолчанию используются для слоёв!
Уже может быть конфликт..
Упрощай, иначе будешь колупаться до второго пришествия
и так ничего и не наковыряешь))


Часовой пояс GMT +3, время: 09:07.