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

    [DOM]appendChild

    Ciao A tutti, ho fatto una piccola funzione che crea un div e poi dovrebbe aggiungerlo alla fine dei div esistenti..ho notato questo

    <div id=div1>bla bla bla</div>

    quando agigungo un div, invece di crearlo dopo, me lo crea al suo interno..cioè:

    <div id=div1>bla bla bla
    <div id=div2>bla bla bla</div>
    </div>

    per crearlo uso:

    codice:
    function addDiv()
    {
    var newElement = document.createElement('div');
    newElement.setAttribute('id',"div2");
    newHTML="bla2 bla2...";
    newElement.innerHTML=newHTML;
    
    document.getElementById("div1").appendChild(newElement);
    }
    come posso agigungere dopo </div> del div1 ?

  2. #2

    [DOM] inserire una riga alla fine è possibile?

    ciao,
    ho questa tabella

    codice:
    <table width="250" border="2" cellspacing="0" cellpadding="0">
      <tr id="tr1">
        <td id="td1" bgcolor="#FF0000">prova 1</td>
      </tr>
      <tr id="tr2">
        <td id="td2" bgcolor="#0033FF">prova 2</td>
      </tr>
      <tr id="tr3">
        <td id="td3" bgcolor="#FFFF00">prova 3</td>
      </tr>
      <tr id="tr4">
        <td id="td4" bgcolor="#666666">prova 4</td>
      </tr>
    </table>
    vorrei copiare la tr1 e inserirla dopo la tr4...ho provato con


    codice:
    function prova()
    	{
    	Obj1=document.getElementById("tr1");
    	Obj2=document.getElementById("tr2");
    	Obj3=document.getElementById("tr3");
    	
    	div1=Obj1.cloneNode(true);
    	Obj3.appendChild(div1);
    	}
    ma inserisce prima del </tr> della tr4!

  3. #3
    Utente di HTML.it L'avatar di lake86
    Registrato dal
    Dec 2006
    Messaggi
    705
    .appendChild aggiunge un figlio :P quindi dentro il div che selezioni. Puo farlo dopo facendo l'append ad un livello superiore, come body se i div sono nel body, o creare un div contenitore di tutti gi altri e fare l'append a lui.

    Ciao Matteo

  4. #4
    :master: vuol dire che non esiste un qualcosa tipo insertAfter object?

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    mi sono scritto una funzioncina per fare questo
    codice:
    function appendAfter(newNode,node){
    	if(node.parentNode){ 
    		if(node.nextSibling) node.parentNode.insertBefore(newNode,node.nextSibling);
    		else node.parentNode.appendChild(newNode);
    	}
    }
    da richiamare, per fare l' esempio della tua funzione prova, cosi'
    codice:
    function prova()
    	{
    	Obj1=document.getElementById("tr1");
    	Obj2=document.getElementById("tr2");
    	Obj3=document.getElementById("tr3");
    	
    	div1=Obj1.cloneNode(true);
    	appendAfter(div1,Obj3);
    	}
    ciao

  6. #6
    direi che è ottima..mi h chiriati anche 2 o 3 cosette...su SWAPNODE conosci nulla?...non ho capito come determino il nodo..ovvero tr1 è un nodo della table, ma come ne conosco il nome da passare a swapnode...con nameNode?

    scusa,ma sono all'inizio e cerco di farmi un'idea...ho cercato anche dei libri..ma non ne o trovati in italiano!

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    swapnode non e' un metodo del DOM, e' una funzione arbitraria che io non conosco,
    lascia un link per rendere chiaro di cosa parli

  8. #8
    ho trovato questo

    http://www.webreference.com/js/column43/swap.html
    http://www.quirksmode.org/dom/w3c_old.html

    anche altri, ma dovrebbe bastare..almeno..a te che hai già masticato l'argomento

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    pero' leggo su quirksmode:
    swapNode()
    MS extension to Level 1 Core

    = metodi IE proprietari nel DOM???? no, grazie!

    cloneNode e replaceChild bastano per fare quello che fa swapNode
    http://javascript.html.it/guide/lezi...del-documento/

  10. #10
    upercarità!..non lo avevo letto..nai nai..no swap!!

    ora leggo il tuo link e ti ringrazio già da ora, tanto con un clone e replace si riesce si

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.