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 :

[POO] Redimensionnement Image background


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 3
    Points : 4
    Points
    4
    Par défaut [POO] Redimensionnement Image background
    Salut à tous,

    je voudrais resizer l'image d'un background
    c'est à dire je crée un objet image que je resize via une petite function
    et ensuite je voudrais l'affecter en tant que background d'une DIV

    si qq'un a une idée ca me sauverait le je seche

    //Code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var img = new Image();
     
    img.src = url;
     
    img.width = widthResize;
    img.height = heightResize;
     
    var backgroundImg = document.getElementById(idContainer).style.backgroundImage;
    backgroundImg = img;
    en gros c l'idee mais ca marche pas du tout
    var img est un objet de nature [html objectImageElement] et document.getElementById(idContainer).style.backgroundImage renvoie aussi [html objectImageElement]

    je ne comprends pas ???

    merci pour votre aide !

  2. #2
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Salut,

    A ma connaissance, la taille d'une image de fond ne peut pas être spécifiée.

    Je vois deux moyens de contourner le problème.

    1) Tu resize l'image coté serveur puis tu applique le style background-image avec
    l'url de l'image resizée.

    2) Tu utilise effectivement une balise img qui redimensionne l'image et tu pose ton
    contenu par dessus dans un div positionné en absolu sur l'image.
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  3. #3
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    En CSS, c'est
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    background-image:url(adressedetonimage);

    Donc en Javascript c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    backgroundImage = "url(adressedetonimage)";
    Or, toi tu as
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    backgroundImage = "objetImage";

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    backgroundImage = "url("+img.src+")";

  4. #4
    Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    merci de ta reponse,

    ca marche bien, j'avais fait une erreur ds mon post, il était temps que j'aille dormir

    mon probleme en fait etait de redimensionner l'image de background sans que la div ne change de taille, du coup dans le DIV j'aurai mis un gif transparent pour qu'on ne puisse pas récuperer les images.

    je voulais pouvoir la redimensionner en la croppant, et la recentrer ensuite avec les styles, du coup j'ai fait avec une image ds un DIV avec overflow et c'est beaucoup plus facile

  5. #5
    Membre du Club Avatar de Prue
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 101
    Points : 59
    Points
    59
    Par défaut


    J'ai le même problème que elsicilianos mais je n'arrive pas à le corriger même avec vos directives

    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var img = new Image();
    var imgWidth = 209;
    var imgHeight = 91;
     
    img.src = 'http://localhost:8080/frontoffice/monImage';
     
    img.width = imgWidth;
    img.height = imgHeight;
     
    document.getElementById('divLogo').style.backgroundImage = "url("+img.src+")";
    src, width et height sont correctement renseignés, mon image s'affiche bien dans mon background, mais au final, elle n'est pas redimensionnée.

    Quelqu'un a une idée de la raison pour laquelle ça ne marche pas ?

    Merci d'avance ^^

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

Discussions similaires

  1. [CSS 3] Redimensionnement auto image background suivant résolution visiteur
    Par woodix dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 07/08/2014, 19h13
  2. Aligner une image background à droite
    Par Xeron dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 02/06/2008, 01h31
  3. Redimensionnement d'image background
    Par ghosty177 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 12/06/2007, 15h18
  4. images background dans un TD
    Par zulot dans le forum Balisage (X)HTML et validation W3C
    Réponses: 14
    Dernier message: 09/11/2005, 12h03
  5. afficher les images background
    Par DELYMED2 dans le forum ASP
    Réponses: 2
    Dernier message: 17/10/2005, 09h09

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