Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1
    Utente di HTML.it L'avatar di shaone
    Registrato dal
    Apr 2003
    Messaggi
    212

    Muovere,spostare layer [tipo le icone su desktop]

    Ciao a tutti ragazzi.. Sto impazzendo..
    E possibile creare dei livelli che posso muovere nella finestra del browser tipo come si fa con le icone sul desktop?

    Ho fatto ricerche per livelli,layer,Layers,Dhtml ecc.. ma non un esempio o script che faccia questa cosa.. E' cosi' complicato ?

    Grazie ... Aspetto un consiglio se continuare o desistere nella mia impresa! Ciao!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non e` difficilissimo fare una cosa del genere che funzioni su un solo browser/SO.
    E` una cosa impossibile farlo con strumenti generali.

    Devi usare gli eventi onmousedown, onmousemove, e simili. Per IE ci sono anche degli eventi specifici per il drag.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Volevo aprira un 3d ma approffitto di questo.

    Mi serviva una cosa del genere e ho fatto qualche ricerchina e ho trovato questo: muove nasconde ridimensiona e altro layer e immagini


    Il problema è che è una libreria di ben 35kB, sul sito fanno pure gli spiritosi nel download, "scarica lo zip solo 10kB, kB non MB!" A me fondamentalmente servirebbe solo il drag e neanche molta retrocompatibilità, ho provato a togliere un po' di roba ma ne rimangono sempre una trentina, mi pare un po' eccessivo per un drag, inoltre con Mozilla mi pare un po' lentino.
    Poi ho trovato questo che come script è stringatissimo però mi sono accorto che con Mozilla funziona solo in pagine in quirk mentre a me servirebbe per una pagina in strict. Perchè non va in strict?
    4 pag. x il forum:l'ospite ora ha solo link sponsorizzati, valli a capire-GommaLayout! Agg. 25 agosto 2004)-Molla&Collano privati tecnici, per favore

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ho dato un'occhiata al codice "stringatissimo", ed ho visto alcuni problemi di compatibilita`:

    1. all'inizio
    .drag{position:relative;cursor:hand}
    deve diventare:
    .drag{position:relative;cursor:pointer}


    2. alla fine - le due linee:
    document.onmousedown=drags
    document.onmouseup=new Function("dragapproved=false")
    non possono stare nella head, ma devono stare dentro il body (altrimenti viene usato un oggetto che non e` ancora definito)


    Poi ci sarebbe da commentare sulla mancanza assoluta di terminatori di linea (i puntoevirgola), ma il JS lo supporta.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    1)sì, il cursor già l'avevo cambiato con move


    2)cambierebbe poco mettere lo script esterno? perchè anche esterno non va lo stesso.

    ho notato che la console di mozilla mi dice:

    line 27 firedobj has no properties
    4 pag. x il forum:l'ospite ora ha solo link sponsorizzati, valli a capire-GommaLayout! Agg. 25 agosto 2004)-Molla&Collano privati tecnici, per favore

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    x farlo funzionare in strict mode dovrebbe bastare questo
    codice:
    function move(e){
      if (dragapproved){
        z.style.left=ns6? temp1+e.clientX-x+'px': temp1+event.clientX-x
        z.style.top=ns6? temp2+e.clientY-y+'px': temp2+event.clientY-y
        return false
      }
    }

  7. #7
    non va cioè non andava, ne avevi postato un altro di codice con l'aggiornamento funzia.

    sembra perfetto, rimane la segnalazione di quell'errore con mozilla, compare quando clicco in un altro punto della pagina, ma mi sembra veniale. grazie.




    ops, ho fatto un po' di confusione, non hai fatto nessun aggiormento, andava da subito ma commentavo il tuo invece di quello vecchio.
    4 pag. x il forum:l'ospite ora ha solo link sponsorizzati, valli a capire-GommaLayout! Agg. 25 agosto 2004)-Molla&Collano privati tecnici, per favore

  8. #8
    scusa Mich

    questo che cosa fa?

    /*
    while (firedobj.tagName!=topelement&&firedobj.className! ="drag"){
    firedobj=ns6? firedobj.parentNode : firedobj.parentElement
    }
    */


    perché l'ho commentato e tutto sembra funzionare lo stesso e inoltre, non mi dà più quell'errore, se lo tolgo che succede?
    4 pag. x il forum:l'ospite ora ha solo link sponsorizzati, valli a capire-GommaLayout! Agg. 25 agosto 2004)-Molla&Collano privati tecnici, per favore

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Jerry, l' errore di cui parli non riesco a riprodurlo (moz 1.5 su win2k)

    occhio che commentare quel passaggio non è corretto:
    serve a risalire l' alberatura DOM x verificare che l' elemento che ha scatenato l' evento sia contenuto in uno abilitato ad essere draggato,
    altrimenti solo l' elemento stesso è draggabile e nessuno dei suoi figli può permettere il drag del padre

    prova
    codice:
    <div class="drag">
    <div>sono un div annidato in "drag": non puoi trascinare mio padre</div>
    sono direttamente in "drag": mi puoi trascinare</div>

  10. #10
    Io vi consiglio di guardarvi il codice sorgente di questo giochetto fatto in Javascript: http://www.mtbireland.com/dodge.html

    E' facilissimo sia da capire che da modificare, basta perderci quel quarto d'ora e capirete tutto quanto.
    When the myth has not limits

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.