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

JavaScript Discussion :

Enregistrer et restituer les paramètres viewport d'un portable


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut Enregistrer et restituer les paramètres viewport d'un portable
    Bonjour,

    Lors de l'affichage d'une box j'ai besoin de faire (avec jquery)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $("head").append('<meta id="viewport" name="viewport" content="width=device-width,initial-scale=1">');
    pour que la dimension de l'image soit calculée et affichée correctement. Jusque là tout va bien.

    Mais je souhaiterais enregistrer préalablement (à l'ouverture de la box) les conditions initiales du viewport pour pouvoir les restituer à la fermeture de la box, de sorte que le visiteur retrouve la même vue qu'avant l'ouverture de la box. J'ai lu quelques tutos sur le sujet comme celui-ci mais aucun qui ne donne un bout de code en exemple... et mes essais ne sont pas concluants.

    J'ai essayé d'enregistrer la largeur avec $(window).width() et le zoom avec screen.width/$(window).width() mais je me retrouve, à la fermeture de la box, avec un affichage pleine page quelque soit le zoom initial. Quelqu'un aurait-il une idée pour résoudre ce problème ?

    (tests effectués sous android avec Chrome et autre navigateur Mozilla 5.0 AppleWebKit like Gecko version 4 mobile Safari, mêmes résultats)

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Bonjour,
    tu peux toujours récupérer le noeud META et le remplacer par un autre, ensuite il te suffit de replacer l'ancien à sa place.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // récupération de la balise
    var oMetaOld = document.getElementsByName('viewport')[0];
    // création de la nouvelle balise
    var oMetaNew = document.createElement('META');
      oMetaNew.content = 'width=device-width,initial-scale=1';
      oMetaNew.name = 'viewport';
    // remplacement
    oMetaOld.parentNode.replaceChild( oMetaNew, oMetaOld);
     
    // et pour la restauration
    function restaure(){
      oMetaNew.parentNode.replaceChild( oMetaOld, oMetaNew);
    }

  3. #3
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    La modification dynamique de la configuration du viewport est déconseillée, les navigateurs ne réagissent pas tous de la même façon et certains vont jusqu'à ignorer complètement ces modifications. S'il faut absolument un viewport spécial pour une utilisation particulière, mieux ouvrir une nouvelle page.

  4. #4
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Merci pour vos réponses.

    Oui apparemment la modification dynamique du viewport pose problème... Je reste donc sur ma solution qui à défaut d'être parfaite, est la moins pire.

Discussions similaires

  1. Réponses: 7
    Dernier message: 16/04/2013, 19h57
  2. Comment choisir les paramètres à enregistrer.
    Par DUTMP dans le forum LabVIEW
    Réponses: 7
    Dernier message: 18/06/2010, 11h18
  3. Réponses: 0
    Dernier message: 20/11/2008, 10h08
  4. Enregistrer les paramêtres en quittant un formulaire?
    Par Paul Van Walleghem dans le forum Windows Forms
    Réponses: 5
    Dernier message: 24/10/2008, 19h56
  5. Réponses: 6
    Dernier message: 16/10/2007, 09h15

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