| Уважаемые форумчане. Скажите, пожалуйста, я на карте яндекс с помощью javascript и json вывожу объекты. И теперь возник вопрос - как сделать, чтобы при щелчке на конкретный объект, открывалась новая страница в которой будет описание этого объекта. Вот http://joxi.ru/QqqpUxjKTJA9HzJov6c Подскажите, пожалуйста. Может кто-то делал похожие. Поделитесь кодом. Заранее благодарен Код
PHP код: <script type='text/javascript'> var n = 0; var objId = Array(); var objCollection; var data = $('script#scriptmap').attr('data-map'); if (data) var mapObj = JSON.parse(data); <?php $i=0;?> ymaps.ready(init); function init(){ objCollection = new ymaps.GeoObjectCollection(); var mainMap = new ymaps.Map('map', { center: [46.845940,35.363733], zoom: 15 }); for (i in mapObj){ if (mapObj[i]["objId"]>0){ var <?php $i++; echo 'obj'.$i;?> = new ymaps.Placemark( [mapObj[i]['cord-x'], mapObj[i]['cord-y']], { hintContent: mapObj[i]['name'] }, { iconImageHref: "/files/user/ico/" + mapObj[i]['ico'], iconImageSize: [mapObj[i]['width'], mapObj[i]['height']], iconImageOffset: [-mapObj[i]['width'] / 2, -mapObj[i]['height']] }); <?php echo 'obj'.$i;?>.properties.set({ id: mapObj[i]["objId"] }); objId.push(mapObj[i]["objId"]); objCollection.add(<?php echo 'obj'.$i;?>); }else{ var obj = new ymaps.Placemark( [mapObj[i]['cord-x'], mapObj[i]['cord-y']], { hintContent: mapObj[i]['name'] }, { iconImageHref: "/files/user/ico/" + mapObj[i]['ico'], iconImageSize: [mapObj[i]['width'], mapObj[i]['height']], iconImageOffset: [-mapObj[i]['width'] / 2, -mapObj[i]['height']] }); mainMap.geoObjects.add(obj); } } objCollection.each(function (obj){ obj.events.add('click', function(e) { console.log(obj.properties.get('id')); $.scrollTo('#'+obj.properties.get('id'), 500, {offset: {top: -80}}); }); }); mainMap.geoObjects.add(objCollection); //Новый объект------------------------------------------------------------------------ var build = new ymaps.Placemark( [46.847540,35.363733], { hintContent: "Строительство нового объекта на ул. Горького" },{ iconImageHref: "/files/user/ico/icon_new.png", iconImageSize: [78,94], iconImageOffset: [-78 / 2, -94] }); build.events.add('click', function(e){ document.location.href = "http://"+window.location.hostname+"/plan-and-prices/"; }); mainMap.geoObjects.add(build); } </script>
Последний раз редактировалось SergeyNetIt; 24.06.2014 в 21:42. |