Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Tag Image ridimensionabile in base all'immagine?

    Ciao volevo chiedere se qualcuno ha una funziona sotto mano che in un semplice tag image potesse controllare la dimensione dell'immagine caricata ovvero:

    Vorrei che le foto che si visualizzo nella mia pagina non siano più grandi di 640x480pixel

    se nel tag image mettessi:

    [img]/gallery/img/<%=(Rs_cat2([/img]" width="640" height="480" border="0">

    succede che anche quelle più piccole diventino di 640x480 invece vorrei solo che quelle più grandi siano ridotte mentre le piccole siano della loro esatta misura...

    Grazie!
    My simple Script Asp: VotoMedio

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    potrebbe valere la pena cercare di fare qualcosa con la proprieta' max-width dei css

    restando in campo javascript
    se non fosse necessario specificare width e height nel markup sarebbe semplicissimo
    codice:
    [img]...[/img]640)?640:this.width; // idem per l' height" />
    il problema e' che vanno specificati e cosi' il this.width e' quanto hai specificato nel width

    dubito ci siano metodi piu' immediati, ma l' alternativa che mi viene in mente e' creare un nuovo oggetto image, prenderne le misure e settarle come width e height dell' immagine originale
    (a cui ne avrai fornito di fittizie nel markup)
    codice:
    function resizeImage(im){
    	var k=new Image();
    	k.onload=function(){
    		var w=this.width;
    		var h=this.height;
    		im.width=(w>640)?640:w;
    		im.height=(h>480)?480:h;
    	}
    	k.src=im.src;
    }
    [img]...[/img]

    non so se cosi' il gioco vale la candela...

  3. #3
    non so se cosi' il gioco vale la candela...
    mi funziona benissimo quello che hai postato!, ma non ho capito cos'è che non vale la candela...
    My simple Script Asp: VotoMedio

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    - avere nel markup misure fittizie
    - il conseguente riposizionamento degli elementi successivi a fine caricamento immagine
    - una funzione richiamata n volte che, seppur in condizioni normali ripesca dalla cache l' immagine gia' caricata, crea un nuovo oggetto Image

    a quest ultimo punto si potrebbe anche rimediare
    codice:
    function resizeImage(im){
    	im.removeAttribute('width')
    	im.removeAttribute('height')
    	var w=im.offsetWidth;
    	var h=im.offsetHeight;
    	im.width=(w>640)?640:w;
    	im.height=(h>480)?480:h;
    }
    barattando il new Image con un istante di immagine alle dimensioni naturali nel documento
    ciao

  5. #5
    che dire sei un grande!
    My simple Script Asp: VotoMedio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.