comment preciser le css des .gpPopup .gpPopupContent .gpPopupHead uniquement pour une couche donnée (donc hors style en haut de page html).
y a t il une doc ou un exemple?
merci
comment preciser le css des .gpPopup .gpPopupContent .gpPopupHead uniquement pour une couche donnée (donc hors style en haut de page html).
y a t il une doc ou un exemple?
merci
Bonne question ... c'est pas possible sans surcharger le Javascript
En effet, la structure d'une popup ne prend pas en compte la couche ...
De fait, non ...
Mais, il "suffit" de surcharger la méthode qui crée les popups
KML: voir Geoportal.Popup.createPopUpForKMLFeature
GPX: voir Geoportal.Popup.Anchored.createPopUpForGPXFeature
WFS: voir Geoportal.Popup.Anchored.createPopUpForGMLFeature
GeoRSS: voir Geoportal.Popup.Anchored.createPopUpForGeoRSSFeature
La surcharge peut s'effectuer via l'option onFeatureInsert :
A toi de jouer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45... onFeatureInsert: function(feature) { feature.createPopup= OpenLayers.Function.bind(function(f) { /* code de la fonction pour GPX (Geoportal.Popup.Anchored.createPopUpForGPXFeature) : */ var opts= OpenLayers.Util.extend({},this.layer.formatOptions); OpenLayers.Util.applyDefaults( opts,{ size:this.layer.map.getSize(), closeBox:true, onPopupClose:Geoportal.Popup.onPopupClose, backgroundColor:'#ffffff', opacity:0.75 }); var popupClass= this.layer.formatOptions && this.layer.formatOptions.popupClass? this.layer.formatOptions.popupClass : Geoportal.Popup.Anchored; var tempText= (this.attributes.desc? this.attributes.desc+"<br/>":""); tempText+= (this.attributes.cmt? this.attributes.cmt+"<br/>":""); tempText+= (this.attributes.ele? this.attributes.ele:""); tempText= Geoportal.Util.cleanContent(tempText); var popup= new popupClass( "chicken", this.geometry.getBounds().getCenterLonLat(), //taille devra s'adapter au contenu this.layer.map.getSize(), "<div class='gpPopupHead gpGPX'>" + (this.attributes.name? this.attributes.name:"") + "</div>" + "<div class='gpPopupBody gpGPX'>" + tempText + "</div>", null, opts.closeBox, opts.backgroundColor, opts.opacity, opts.onPopupClose, this ); popup= Geoportal.Popup.completePopup(popup,this.layer.formatOptions); this.popup= popup; return this.popup; },feature); } ...![]()
Il y a une autre soluce (en fouillant moi aussi) : il suffit dans la définition de la couche d'indiquer la classe CSS pour les popups ainsi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14var gpx= viewer.getMap().addLayer( "GPX", "Nom de la couche", "url", {//paramétres ... },{//options formatOptions:{ displayClass:'maSuperCSS' ... } ... });![]()
tu vas trop vite pour moi
j'essayai à l'instant d'inclure des fragments d'html dans le gpx
et je remarque que c'est efficace pour le texte
les appels de popup pour d'autres fenêtres fonctionnent aussi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <desc><![CDATA[<font size='1'><b>71.1 Rocher du Général<br/><a href='#' onClick='pop2()'><font color='yellow'>Jaune N°2 PD <br/></a><a href='#' onClick='pop1()'><font color='blue'>Bleu N°1 TD-</b></a>]]></desc>
Reste donc à bosser la structure de la Box à suivre ....... et merci
As-tu fait une recherche sur le forum avec le mot "infobulle" traduction française de popup?
Il y a quelques fils qui devraient t'intéresser...
Bon travail!
Sinon, il y a aussi le site http://www.utagawavtt.com/gmap/geopo...rale-topos-vtt qui gère bien les "infobulles"
Merci pour le coup de pouce .........
Oui oui avant de poser la question j'ai sillonnée le forum et notamment ce postdans lequel tu donnais dejà des pistes pour les survol de wpts et autres traces. le site de zebulon-21 et aussi très bien codé sur ce point.
J'en ai encore mal à la têtemais j'arriverai à contrarier les class de type gpPopupHead gpGPX et compagnie ............
mais vu mon inexperience en javascript cela va me prendre un peu de temps.
merci encore
Partager