Autor Zpráva
roboter
Profil *
Dobrý večer,
na své stránky jsem si vložil mapu z Mapy.cz. Přidávám do ní body/značky (zatím zkušebně jen čtyři), kterým bych rád přiřadil URL odkaz, ale nevím jak. Zkrátka aby při kliknutí na značku v mapě se otevřela HTML stránka z mého webu. V nápovědě API Mapy.cz ani zde jsem radu nenašel. JavaScript bohužel neovládám. Dokázal by mi někdo prosím poradit?
http://www.tacky.kvalitne.cz/test/
var obrazek = "http://www.tacky.kvalitne.cz/images/znacka.png";

var m = new SMap(JAK.gel("mapa"));
m.addControl(new SMap.Control.Sync()); 
m.addDefaultLayer(SMap.DEF_BASE).enable(); 
var mouse = new SMap.Control.Mouse(SMap.MOUSE_PAN | SMap.MOUSE_WHEEL | 

SMap.MOUSE_ZOOM); 
m.addControl(mouse); 

var data = {
    "Děčín": "50.7719942\"N, 14.1932883\"E",
    "Frýdek-Místek: Morava": "49.6768069\"N, 18.3330328\"E",
    "Frýdek-Místek: Arthur\'s": "49.6845539\"N, 18.3419667\"E",
    "Vyšší Brod": "48.6162156\"N, 14.3127872\"E",
};
var znacky = [];
var souradnice = [];

for (var name in data) { 
    var c = SMap.Coords.fromWGS84(data[name]); 
    
    var options = {
        url:obrazek,
        title:name,
        anchor: {left:10, bottom: 1}  
    }
    
    var znacka = new SMap.Marker(c, null, options);
    souradnice.push(c);
    znacky.push(znacka);
}

var options = {
    anchor: {left:0.5, top:0.5}
}
znacky[1].decorate(SMap.Marker.Feature.RelativeAnchor, options);

var vrstva = new SMap.Layer.Marker(); 
m.addLayer(vrstva); 
vrstva.enable(); 
for (var i=0;i<znacky.length;i++) {
    vrstva.addMarker(znacky[i]);
}

var cz = m.computeCenterZoom(souradnice); 
m.setCenterZoom(cz[0], cz[1]);
dev
Profil *
Jediné co jsem našel, mohlo by to pomoct :
var center = SMap.Coords.fromWGS84(13.8088706, 50.4972031);
var m = new SMap(JAK.gel("m"), center, 9);
m.addDefaultControls();

var layer = new SMap.Layer.Marker();
m.addLayer(layer);
layer.enable();

// Značky - začátek 
var card1 = new SMap.Card();
card1.getHeader().innerHTML = "<strong>Nadpis</strong>";
card1.getBody().innerHTML = "Ahoj, já jsem <em>obsah vizitky</em>!";
var options = { title: "České Zlatníky (268 - 307 m n. m.)" };
var marker1 = new SMap.Marker(SMap.Coords.fromWGS84(13.6992658, 50.5246119));
marker1.decorate(SMap.Marker.Feature.Card, card1);
layer.addMarker(marker1);

var card2 = new SMap.Card();
card2.getHeader().innerHTML = "<strong>Nadpis 2</strong>";
card2.getBody().innerHTML = "Ahoj, já jsem <em>obsah druhé vizitky</em>!";
var options = { title: "Dlouhá hora (482 m n. m.)" };
var marker2 = new SMap.Marker(SMap.Coords.fromWGS84(13.7959, 50.45285));
marker2.decorate(SMap.Marker.Feature.Card, card2);
layer.addMarker(marker2);
// Značky - konec 

// Přepínač map - začátek 
m.addDefaultLayer(SMap.DEF_OPHOTO);
m.addDefaultLayer(SMap.DEF_OPHOTO0203);
m.addDefaultLayer(SMap.DEF_OPHOTO0406);
m.addDefaultLayer(SMap.DEF_TURIST);
m.addDefaultLayer(SMap.DEF_HISTORIC);
m.addDefaultLayer(SMap.DEF_BASE).enable();

var layerSwitch = new SMap.Control.Layer();
layerSwitch.addDefaultLayer(SMap.DEF_BASE);
layerSwitch.addDefaultLayer(SMap.DEF_OPHOTO);
layerSwitch.addDefaultLayer(SMap.DEF_TURIST);
layerSwitch.addDefaultLayer(SMap.DEF_OPHOTO0406);
layerSwitch.addDefaultLayer(SMap.DEF_OPHOTO0203);
layerSwitch.addDefaultLayer(SMap.DEF_HISTORIC);
m.addControl(layerSwitch, {color:"#000"});
m.addControl(layerSwitch, {left:"8px", top:"9px"});
// Přepínač map - konec 

// Shlukovače - začátek 
var clusterer = new SMap.Marker.Clusterer(m);
vrstva.setClusterer(clusterer);
// Shlukovače - konec
roboter
Profil *
Nepomáhá to. HTML tagy <a> ten javascript nebere... když tam vložím do záhlaví nebo do těla vizitky nějaký odkaz, mapa se na webu nenačte... když tam odkaz není, tak se načte v pohodě.
Ještě je tu možnost s GoogleMaps, ale tam se to načítá jako <iframe>, nelíbí se mi to tak a navíc je to pomalejší než mapy.cz :-( Ach jo...
roboter
Profil *
Problem solved, ale nyní nastal jiný problém: http://www.tacky.kvalitne.cz/test/
Zadal jsem do mapy zkušebně 4 body, ale vizitka se otevírá vždycky jen u posledně zadaného bodu. Předchozí body nelze rozkliknout a při zoomování se "přesouvají" po mapě (respektive zachovávají neustále stejný rozestup) :-( Zdrojový kód je následující, nevidíte někde chybu?
var center = SMap.Coords.fromWGS84(15.4687500, 49.9017112);
var m = new SMap(JAK.gel("m"), center, 7);
m.addDefaultControls();

var layer = new SMap.Layer.Marker();
m.addLayer(layer);
layer.enable();
 
// Značky - začátek 

var card1 = new SMap.Card();
card1.getHeader().innerHTML = "<a href=\"http://www.tacky.kvalitne.cz/pivovar/belec-nad-orlici-u-husku/\"><strong>Běleč nad Orlicí</strong> (<i>U Hušků</i>)

</a>";
var options = { title: "Běleč nad Orlicí" };
var marker1 = new SMap.Marker(SMap.Coords.fromWGS84(15.9418978, 50.1972072), "myMarker", options);
marker1.decorate(SMap.Marker.Feature.Card, card1);
layer.addMarker(marker1);
 
var card2 = new SMap.Card();
card2.getHeader().innerHTML = "<a href=\"http://www.tacky.kvalitne.cz/pivovar/benesov-ferdinand/\"><strong>Benešov</strong> (<i>Ferdinand</i>)</a>";
var options = { title: "Benešov" };
var marker2 = new SMap.Marker(SMap.Coords.fromWGS84(14.6904800, 49.7801133), "myMarker", options);
marker2.decorate(SMap.Marker.Feature.Card, card2);
layer.addMarker(marker2);

var card3 = new SMap.Card();
card3.getHeader().innerHTML = "<a href=\"http://www.tacky.kvalitne.cz/pivovar/beroun-berounsky-medved/\"><strong>Beroun</strong> (<i>Berounský Medvěd</i>)

</a>";
var options = { title: "Beroun" };
var marker3 = new SMap.Marker(SMap.Coords.fromWGS84(14.0717681, 49.9565128), "myMarker", options);
marker3.decorate(SMap.Marker.Feature.Card, card3);
layer.addMarker(marker3);

var card4 = new SMap.Card();
card4.getHeader().innerHTML = "<a href=\"http://www.tacky.kvalitne.cz/pivovar/bilovec-u-holubu/\"><strong>Bílovec</strong> (<i>U Holubů</i>)</a>";
var options = { title: "Bílovec" };
var marker4 = new SMap.Marker(SMap.Coords.fromWGS84(18.0198589, 49.7599361), "myMarker", options);
marker4.decorate(SMap.Marker.Feature.Card, card4);
layer.addMarker(marker4);

// Značky - konec 
 
// Přepínač map - začátek 
m.addDefaultLayer(SMap.DEF_OPHOTO);
m.addDefaultLayer(SMap.DEF_TURIST);
m.addDefaultLayer(SMap.DEF_BASE).enable();
 
var layerSwitch = new SMap.Control.Layer();
layerSwitch.addDefaultLayer(SMap.DEF_BASE);
layerSwitch.addDefaultLayer(SMap.DEF_OPHOTO);
layerSwitch.addDefaultLayer(SMap.DEF_TURIST);
m.addControl(layerSwitch, {color:"#000"});
m.addControl(layerSwitch, {left:"8px", top:"9px"});
// Přepínač map - konec 
 
// Shlukovače - začátek 
var clusterer = new SMap.Marker.Clusterer(m);
vrstva.setClusterer(clusterer);
// Shlukovače - konec

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0