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

HTML Discussion :

[HTML] problème avec ScrollBarre


Sujet :

HTML

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 34
    Points : 14
    Points
    14
    Par défaut [HTML] problème avec ScrollBarre
    Bonjour,

    J'ai réalisé une petite galerie photo: un <div></div> avec une scrollBarre et toutes les miniatures ... et un <div></div> avec l'affichage de la photo en taille réelle.

    Vous allez dire que je suis tatillon ... mais voici mon petit soucis:

    Lorsque j'utilise la scrollBarre de mon <div></div> avec les miniatures pour sélectionner une photo à afficher, la photo s'affiche très bien mais la scrollBarre de mon <div></div> avec les miniatures remonte tout en haut de ce <div></div> ... et quand y a une petite centaine de photo ... ben c'est vraiment pas pratique et pas très navigable.

    Existe-t-il une solution pour bloquer la scrollBarre ou elle se trouve ?

    Merci
    @++

  2. #2
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 143
    Points
    11 143
    Par défaut
    bonjour,

    je pense que si ta barre de défilement revient au point de départ c'est que lors du clic sur l'image tu recharges toute la page. Si tu ne chargeais que le contenu du <div> contenant ta photo en taille réelle ?

    voici un petit script :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    <html>
    <head>
    <title></title>
     
    <style type="text/css">
    /*styles pour la photo en taille réelle*/
    /* div conteneur */
    .photo{
    float: left;
    width: 300px;
    height: 300px;
    }
     
    /* image placée dans le div (plus petite que le div) */
    /* seul width est fixé pour éviter les déformations de l'image affichée*/
    .image{
    width: 280px;
    border-style: ridge;
    border-width: 4px;
    border-color: #AADDFF;
    }
     
    /* style de la liste des vignettes */
    .liste{
    float: left;
    overflow: auto;
    width: 160px;
    height: 300px;
    border-style: solid;
    border-width: 1px;
    border-color: #000000;
    margin-left: 20px;
    }
     
     
    .vignette{
    width: 140px;
    }
     
    /* les vignettes sont encadrées par des balises <p> pour une meilleure présentation */
    p{
    margin-top: 2px;
    margin-bottom: 2px;
    }
    </style>
     
    <script type="text/javascript">
    function Clic(Image){
    var elt = document.getElementById("idPhoto");
    elt.innerHTML="<img class=\"Image\" src=\""+Image.src+"\">";
     
    //alert(Image.src);
    }
    </script>
    </head>
     
    <body>
    <div id="idPhoto" class="photo">
    &nbsp;
    </div>
     
    <div class="liste">
    <p><img class="vignette" onclick="Clic(this)" src="photo1.JPG"></p>
    <p><img class="vignette" onclick="Clic(this)" src="photo2.JPG"></p>
    <p><img class="vignette" onclick="Clic(this)" src="photo3.JPG"></p>
     
    <!--liste des photos-->
     
    <p><img class="vignette" onclick="Clic(this)" src="photoN.JPG"></p>
    </div>
    </body>
     
    </html>
    j'utilise la fonction innerHTML pour ne changer que le contenu du <div> "idPhoto".
    Ce script fonctionne sous IE et FireFox. Et la barre de défilement de ta liste ne revient pas au point de départ.

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    oula ... oui tu dois surement avoir raison.

    Le problème est que je gère le système de miniature + affichage des photos taille réelle ... à l'aide de PHP et de variables passé en paramètre en rechargeant la page ...

  4. #4
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 143
    Points
    11 143
    Par défaut
    quant à moi je ne connais pas du tout php.
    Peut-être peux tu reprendre le code ci-dessus et le transcrire en php ?

    génère ta page et ta liste avec le php, puis gère le clic en JS. Possible ça ?

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    hm disons que je suis un peu rétissant à l'utilisation de JS ... de un je suis pas très bon et de deux ... faut que l'utilisateur l'est activé ...

    merci pour ton aide,
    @++

  6. #6
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 143
    Points
    11 143
    Par défaut
    Citation Envoyé par bchristo
    hm disons que je suis un peu rétissant à l'utilisation de JS ... de un je suis pas très bon
    Une bonne partie de ce code est du CSS (pour la mise en page) et HTML. Quant au script JS, il est tout simple et fait 2 lignes (function clic() ) .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <script type="text/javascript">
    function Clic(Image){
    var elt = document.getElementById("idPhoto");
    elt.innerHTML="<img class=\"Image\" src=\""+Image.src+"\">";
     
    }
    </script>
    Avec la focntion innnerHTML, tu remplaces tout ce qui est entre les balises div nommées "idPhoto" par ton nouveau code.

    En plus, il n'y a pas de problème de compatibilité avec d'autres navigateurs.

    Citation Envoyé par bchristo
    deux ... faut que l'utilisateur l'est activé ...
    mouais... en toute franchise, je ne pense pas que tu rencontreras beaucoup de personnes l'ayant désactivé.

Discussions similaires

  1. [HTML] Problème avec DIV, impossible de mettre la hauteur à 100% !!
    Par keyser.greg dans le forum Balisage (X)HTML et validation W3C
    Réponses: 14
    Dernier message: 01/03/2007, 11h46
  2. [HTML] Problème avec le "caption" d'un "table" en HTML
    Par tribaleur dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 16/06/2006, 10h52
  3. [HTML] Problème avec la balise <mailto>
    Par Taylor² dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 10/10/2005, 16h36
  4. [HTML] problème avec un text area
    Par krfa1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 29/10/2004, 11h37

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