Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    8

    Nascondere le immagini azzerando width e height, e' possibile parametrare?

    Ciao,
    ho una serie di immagini che devo far "sparire" in relazione alla pressione di un link, ad esempio:


    [img]../LINKS/swirl.gif[/img]
    [img]../LINKS/swirl.gif[/img]
    [img]../LINKS/swirl.gif[/img]
    [img]../LINKS/swirl.gif[/img]
    .....
    [img]../LINKS/swirl.gif[/img]

    perche' per farlo devo scrivere:
    ia0.style.width=0
    ia0.style.height=0
    ia1.style.width=0
    ia1.style.height=0
    ia2.style.width=0
    ia2.style.height=0
    ia3.style.width=0
    ia3.style.height=0
    ...
    iaEnnesima.style.width=0
    iaEnnesima.style.height=0

    e non posso invece creare una funzione che contenga:

    for (indice=0; indice<=Ennesima; indice++){
    var dacancellare="ia"+indice
    dacancellare.style.width=0
    dacancellare.style.height=0
    }

    Grazie ciao.

  2. #2
    ma se usi
    style.display="none";
    non è meglio?
    PER CASO ti serve un guestbook, completamente personalizzabile?e PER CASO lo vuoi anche gratis e senza pop-up o dialer?E allora prova il nuovo NewAge GuestBook..Niente per caso, tutto perfetto

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    8
    Grazie,
    ma dopo come faccio a farle riapparire?
    Ed in ogni caso ho "solo" dimezzato il numero di istruzioni, ma non sono riuscito a far gestire da un ciclo for la sparizione di tutte le immagini.
    ciao

  4. #4
    Prova con:

    for(var indice=0;indice<=Ennesima;++indice)
    {
    document.getElementById("ia"+indice).style.display ='none';
    }

    e per farle riapparire:

    for(var indice=0;indice<=Ennesima;++indice)
    {
    document.getElementById("ia"+indice).style.display ='visible';
    }

    Non sono del tutto sicuro, tu prova...

    Andrea
    Don't know what I want, but I know how to get it...

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    8
    Grazie
    la prima (sparizione) funziona:
    for(var indice=0;indice<=Ennesima;++indice)
    {
    document.getElementById("ia"+indice).style.display ='none';
    }

    mentre la seconda (riapparizione) NO e mi risponde:
    Impossibile ottenere la proprieta' display, argomento non valido.
    for(var indice=0;indice<=Ennesima;++indice)
    {
    document.getElementById("ia"+indice).style.display ='visible';
    }

    Tuttavia tornando a quello che proponevo io, ho risolto grazie al tuo suggerimento come fare:
    Per farle sparire:
    for(var indice=0;indice<=Ennesima;++indice)
    {
    document.getElementById("ia"+indice).style.width=0
    document.getElementById("ia"+indice).style.eight=0
    }

    Per farle apparire:
    for(var indice=0;indice<=Ennesima;++indice)
    {
    document.getElementById("ia"+indice).style.width=9
    document.getElementById("ia"+indice).style.eight=9
    }

    Grazie

  6. #6
    Prego! Stavo pensando che potresti anche fare un più elegante:

    var imgarray = document.getElementsByTagName('img');

    e poi, per farle scomparire:

    for (var indice=0;indice<=Ennesima;++indice)
    {
    imgarray[indice].style.width=0;
    imgarray[indice].style.height=0;
    }

    e riapparire:

    for (var indice=0;indice<=Ennesima;++indice)
    {
    imgarray[indice].style.width=9;
    imgarray[indice].style.height=9;
    }

    Prova se funziona anche questo!

    Andrea
    Don't know what I want, but I know how to get it...

  7. #7
    Dimenticavo: probabilmente la segnalazione Impossibile ottenere la proprieta' display, argomento non valido te la dà in quanto 'visible' non è un valido valore della proprietà "display", sono andato a controllare. In realtà "display" non è neanche la proprietà migliore da usare, in questo caso (scusa peo91919, non è per sminuirti! ).
    Per risparmiare righe di codice (ma poi se vuoi tenerti la versione con la modifica di width e height fai pure!) potresti provare (sempre riferito al mio esempio precedente):

    imgarray[indice].style.visibility='hidden'; //per farle sparire

    imgarray[indice].style.visibility='visible'; //per farle riapparire

    Anche in questo caso prova perché non ne sono sicuro all 100%, non avendole testate!
    Don't know what I want, but I know how to get it...

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il problema e` diventato di corretto uso delle proprieta` CSS: ti invito a consultare un reference sui CSS.

    display puo` avere le proprieta`
    none - l'oggetto e` tolto dal flusso della pagina
    inline - l'oggetto e` inserito come inline (testo, immagine, ...)
    block - l'oggetto e` inserito come blocco (<div>,[*], ...)

    visibility puo essere:
    hidden - l'oggetto e` presente ma invisibile
    visible - visibile
    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.