IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Streetview dans un Div redimensionnable


Sujet :

APIs Google

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2014
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2014
    Messages : 39
    Par défaut Streetview dans un Div redimensionnable
    Salut à tous.

    J'essaie d'afficher streetview dans un div qui se redimensionne par un clic:
    - A l'ouverture de la page streetview est affiché dans une petite fenêtre en bas à gauche de l'écran

    Nom : 01.PNG
Affichages : 174
Taille : 238,2 Ko

    - Avec le clic sur un bouton streetview occupe toute la largeur de la page avec une hauteur donnée.

    Le problème que quand la Div contenant streetview occupe toute la largeur, ce dernier ne se redimensionne pas automatiquement comme on peu le voir ici:

    Nom : 02.PNG
Affichages : 166
Taille : 207,8 Ko

    Voila la fonction javascript pour redimensionner la div contenant l'objet streetview:

    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
    function fun() {          
     
        var div1 = document.getElementById("div_streetview");
     
            if (div1.style.width != "400px") {
                w = div1.style.width;
                h = div1.style.height;
                div1.style.width = "400px";
                div1.style.height = "250px";				
    		}
            else
            {
                div1.style.width = w;
                div1.style.height = h;				
    		}
            return false;
    }
    Puis je fais appel à la fonction par un onclick sur mon bouton

    J'ai vu qu'il existait l'évènement resize pour la classe StreetViewPanorama mais je trouve très peu d'exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    google.maps.event.trigger(panorama, 'resize')
    Je l'ai donc intégré de cette facon mais sans résultat:

    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
    // On initialise StreetView et on l'affiche dans le div 'div_streetview'
    var optionsPanoramiqueStreetView = {
    	position: centrePigman,
    	pov: {
    		heading: 300,
    		pitch: 0,
    		zoom: 1,
    	}
    };
     
    var panoramiqueStreetView = new google.maps.StreetViewPanorama(document.getElementById('div_streetview'), optionsPanoramiqueStreetView);
     
    google.maps.event.addListener(panoramiqueStreetView, "position_changed", function() {
    google.maps.event.trigger(panoramiqueStreetView, 'resize');
    });
     
    map.setStreetView(panoramiqueStreetView);
    Il est à noter que si je déplace pegman sur la carte ou que je clique sur les flèches de déplacement dans streetview, alors à ce moment là streetview occupe toute la largeur du div.

    Merci de votre aide

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2014
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2014
    Messages : 39
    Par défaut
    C'est bon j'ai trouvé.

    Voilà pour ceux que ça intéresse:

    Il fallait ajouter la propriété setVisible(true) dans la fonction

    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
     
    function fun() {          
     
        var div1 = document.getElementById("div_streetview");
     
            if (div1.style.width != "400px") {
                w = div1.style.width;
                h = div1.style.height;
                div1.style.width = "400px";
                div1.style.height = "250px";
    	    panoramiqueStreetView.setVisible(true);
    		}
            else
            {
                div1.style.width = w;
                div1.style.height = h;
    	    panoramiqueStreetView.setVisible(true);
    		}
            return false;
    }
    Placez avant la fonction initialize()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var panoramiqueStreetView = new google.maps.StreetViewPanorama(document.getElementById('div_streetview'));
    Dans la fonction initialize() enlever le var devant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var panoramiqueStreetView = new google.maps.StreetViewPanorama(document.getElementById('div_streetview'), optionsPanoramiqueStreetView);

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Image dans un div sans redimensionnement
    Par joKED dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 07/10/2009, 16h27
  2. Position de la scrollbar dans un div
    Par VolVic dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/01/2005, 15h25
  3. Attacher image ou champ dans un <div>
    Par protos69 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/11/2004, 14h14
  4. xml->html : retour chariot, espaces dans un div
    Par d'Oursse dans le forum XML/XSL et SOAP
    Réponses: 9
    Dernier message: 27/04/2004, 19h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo