Visualizzazione dei risultati da 1 a 2 su 2

Discussione: zoom img.

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    10

    zoom img.

    Come faccio a recuperare la grandezza di un immagine senza caricarla?
    io vorrei sapere la grandezza in pixel dell'immgaine, quella del frame su cui sto lavorando e poi calcolarmi il rapporto per poter aprire l'immagine con lo zoom appropriato.

    come faccio?

    sotto explorer funziona questo codice qua ma sotto netscape o eudora non funiona:

    function funct(img_name,pagina)
    {
    var img=new Image();
    img.src=img_name;
    var OPER=navigator.userAgent.indexOf("Opera");
    var zoominit=1;
    if (document.layers)
    { //Netscape 4.x
    document.write("Io sono Netscape 4.x");
    var zoominit=document.body.clientWidth/img.width;
    }
    else
    if((OPER>-1))
    {//Opera
    document.write("Io sono Opera");
    if ((img.width==0))
    {
    location.href(pagina);
    }
    else {
    zoominit=document.body.clientWidth/img.width;
    }
    }
    else
    if (document.all)
    {
    //Explorer
    document.write("Io sono EXP");
    if ((img.width==0))
    {
    location.href(pagina);
    }
    else {
    zoominit=document.body.clientWidth/img.width;
    }
    }
    else
    if (document.getElementById)
    { //Netscape 6
    document.write("Io sono Netscape 6");
    if ((img.width==0))
    {
    self.location.reload();
    }
    else {
    zoominit=document.body.clientWidth/img.width;
    }
    }
    return zoominit;
    }


    Grazie


    Un ulteriore domanda come faccio a recuperare la posizione dello scroll verticale?

    grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Attenzione: tu usi document.write dentro una funzione: questo non e` corretto, dato che un document.write() in quella posizione ti cancella irrimediabilmente la pagina. Il fatto che IE non lo faccia e` da imputare ad un baco di IE, piu` che una feature.

    Prova a sostituire i document.write con alert:
    alert("Io sono Netscape 4.x");


    Comunque nelle prime righe della funzione l'immagine viene caricata in memoria:
    img.src=img_name;

    A parte che img e` parola riservata e non puo` venir usata come nome di variabile (ma qualche browser puo` interpretare correttamente), devi attendere il caricamento completo dell'immagine prima di andare a misurarla, per cui in base alla velocita` della rete, al fatto che l'immagine potrebbe essere gia` in cache il comportamento e` diverso.

    Comunque ti invito a fare un ricerca nel forum (bottone in alto a dx): il tuo problema e` gia` stato affrontato.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.