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

    Duplicare div con dentro altri elementi: help!

    Allora,

    io ho un DIV1 che al suo interno contiene una IMG1 e un altro DIV2 contenente a sua volta una IMG2

    quindi:

    codice:
    DIV1
     |
     |-IMG1
     |
     |-DIV2
        |
        |-IMG2
    adesso io devo DUPLICARE il DIV1. Uso questo codice:

    codice:
    var source=document.getElementById('cella');
    	for (i=0; i<arrLoghi.length;i++)
    	{
    	//alert(arrLoghi[i]);
    		var obj=source.cloneNode(true);
    		obj.setAttribute('id','cella'+i);
    		obj.style.position='absolute';
    		obj.style.left=currentX+'px';
    		obj.style.top=currentY+'px';
    		obj.style.visibility='visible';
    		document.getElementById('contenitore').appendChild(obj);
    		currentX+=143;
    	}
    che funziona perfettamente. Ora nasce il problema: in ogni DIV1 duplicato devo far si che in IMG2 ci vada per ogni copia un'immagine diversa (che prenderà il valore da arrLoghi[i])....

    mi dite come cavolo faccio a puntare a quella immagine??

    io a quel loop in cui duplico il DIV1 devo aggiungere una riga che gli dica che l'IMG2 contenuta nel NUOVO DIV1i deve puntare al src=arrLoghi[i]

    idee?

    grazie a tutti

  2. #2
    Secondo me è meglio che ti crei una classe in javascript e aggreghi gerarchicamente tutti gli elementi manualmente tramite document.createElement e appendChild

    Così facendo puoi puntare ad ogni elemento del tuo oggetto e nel tuo caso all'immagine.

  3. #3
    scusa non sono tanto esperto in javascript: cioè? potresti darmi una linea guida al volo, gisuto due righe di codice?

    grazie cmq della risposta

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    anche se il nodo e' clonato puoi usare i metodi del DOM su di esso, anche prima di appenderlo al genitore

    nel tuo caso, se c'e' sicuramente una ed una sola immagine prima di quella di cui vuoi cambiare l' src, puoi accedervi tramite
    obj.getElementsByTagName('img')[1]

    puoi quindi scrivere direttamente
    obj.getElementsByTagName('img')[1].src=arrLoghi[i]

    ciao

  5. #5
    perfetto funziona benissimo...un altro probelma risolto nel lungo percorso della programmazione ti ringrazio mi hai risolto un dubbio

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    anche quello che ha scritto Trigun e' corretto,
    dipende da quale sistema ti risulta + comodo
    considerando la complessita' della struttura da clonare e le modifiche da apportare ad ogni clone

    ciao

  7. #7
    ad ogni clone devo semplicemente cambiare il percorso di un'immagine, posizionare un div e metterci un url...quello che mi hai detto te va benissimo perchè tanto la struttura del clone è semplice semplice...

    si quello di trigun va bene, ma in javascript mi perdo un pò, fosse stato in asp l'avrei fatto

    cmq mi sto divertendo tantissimo: sto facendo una griglia di loghi caricati da un xml e posizionati ogni logo in una cornicetta... tra css e javascript sto imparando un sacco di cosette (ad esempio ho trovato una funzione per leggere gli xml davvero notevole spero solo che funzionerà bene anche con firefox (alla malora opera) )

    grazie mille

  8. #8
    Scusa se non ti ho postato un esempio ma mentre lo stavo postando sul forum (dopo averlo quasi finito di scrivere) ma sono messo a fare dell'altro e intanto ho perso la sessione sul forum cosi' che premento su pulsante "invia risposta" tutta la bella spiegazione che ti ho scritto e andata a farsi benedire (xkè mi chiedeve il login)... e non ho più trovato il tempo per ripostartela. Cmq se hai risolto ... meglio così!!!

    La soluzione di Xinod è ottima nel tuo caso!!

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.