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 :

redimensionner une image


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 213
    Par défaut redimensionner une image
    Bonjour à tous,
    je me suis récemment lancé dans le javascript.
    je voudrai faire un systeme de miniature, avec du javascript: en gros quand la souris passe sur l'image, celle ci reprend sa taille réelle. Sauf que ma fonction qui lui redonne sa taille réelle ne marche pas, voici les codes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function retaille() {
    var nombre_titre = document.getElementsByTagName('img').length;
    for(var i = 0; i < nombre_titre; i++) 
    {
    document.getElementsByTagName('img')[i].style.height = '100px';
    }
    }
     
    function taille(id) {
    var img = document.getElementById(id);
    img.style.height = '';
    img.style.height = img.offsetHeight;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <img src="images/grandport.jpg" alt="port" onmouseover="taille(1);"/>
    <h3 class="textgauche">Concarneau et sa ville close</h3>
    <img src="images/eglise.png" alt="clocher"/>
    La fonction retaille est appelée dans l'atribut onLoad de la balise body. Elle marche tres bien^^

    Donc quelqu'un sait il pourquoi ma fonction taille() ne marche pas???

    Merci d'avance

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="images/grandport.jpg" alt="port" onmouseover="taille(this);"/>
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function taille(img) {
    img.style.height = '';
    }
    devrait suffire.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 213
    Par défaut
    oki merci beaucoup ca marche maintenant, et en plus j'ai appris quelque chose^^.

  4. #4
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par défaut
    salut,
    tu peux le gérer uniquement par CSS
    je viens de constater que ça marche sous IE6 (sur les autres navigateurs ça marche, mais sur IE c'était pas sûr)

    par contre pour ça il faut utiliser la propriété filter. je ne sais pas pourquoi, mais je suis tombé dessus complètement par hasard après moults essais infructueux pour hacker le comportement de IE . c'est un complet mystère pour moi, un gros coup de bol...

    le pire c'est que ça marche pour tout (a priori... je n'ai testé que les images et les input). c'est magique !!!
    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
    <html>
        <head>
            <style>
    a img
    {
        width:100px;
        border:0px;
    }
     
    a:hover img
    {
        filter:alpha(opacity=100);
        width:auto;
        border:0px;
    }            
            </style>
        </head>
        <body>
            <a href="javascript:void 0;">
                <img src="cheveux.jpg" />
            </a>
        </body>
    </html>

Discussions similaires

  1. [VB.NET] Redimensionner une image dans un PictureBox
    Par Monster77 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 05/04/2007, 18h24
  2. [32 bits] Redimensionner une image JPEG/GIF/PNG...
    Par CR_Gio dans le forum x86 32-bits / 64-bits
    Réponses: 2
    Dernier message: 04/10/2005, 00h57
  3. Redimensionner une image...
    Par RhaZieL dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 22/07/2005, 09h30
  4. [VB.NET] Redimensionner une image proportionnelement
    Par Monster77 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 19/10/2004, 12h10
  5. [MX2004] redimensionner une image lors du chargement
    Par ouinouin dans le forum Flash
    Réponses: 8
    Dernier message: 18/02/2004, 18h32

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