Клуб API Карт

Класс в шаблоне для iconContentLayout

Удалённый пользователь
27 марта 2013, 15:16

как исправить проблему некоррктного подхватывания класса для div, в подписе к метке?

 

 

в шаблоне задается:

ymaps.templateLayoutFactory.createClass('<div class="myclass">$[properties.iconContent]</div>',

 

конечно, можно задать изначально размер  (style = "40px"), но это не выход

 

интересный эффект, если в строке ('<div class="my ...

 после символа d вставить пробел, то рамка получиться вокруг подписи, только

 эффект будет как от span: при наличии пробелов (т.е. переноса слов) рамка будет только вокруг самих слов, а не блока

  

 

<html>

<head>

<style>

.myclass { background-color:#ffffff; font-weight:bold; border:1px blue solid; }

</style>

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>

<script src="http://api-maps.yandex.ru/2.0/?load=package.full&lang=ru-RU" type="text/javascript"></script>

<script type="text/javascript">

ymaps.ready(init);

function init () {
var myMap = new ymaps.Map("map", { center: [55.76, 37.64], zoom: 10 });

var temp = ymaps.templateLayoutFactory.createClass('<div class="myclass">$[properties.iconContent]</div>',
{build: function () {
this.constructor.superclass.build.call(this);
},
clear: function () {
this.constructor.superclass.clear.call(this);
}
});
ymaps.layout.storage.add('metka#m', temp);



myGeoObject = new ymaps.GeoObject({geometry: {type: 'Point',coordinates: [55.8, 37.8]},
properties: { hintContent: 'Metka' }
},
{ iconContentLayout: 'metka#m', iconContentOffset: [20, 20] });
myMap.geoObjects.add(myGeoObject);
myGeoObject.properties.set("iconContent",'Metka 2');
}

</script>

 

 </headd>

<body>

<div id="map" style="width:600px; height:300px"></div>
</body>

</html>

 

2 комментария
Подписаться на комментарии к посту

У меня получилось сделать рамку выставлением свойства display: inline-block для myclass.

Удалённый пользователь
28 марта 2013, 15:08

спасибо,

 сработало