Ver Mensaje Individual
  #21 (permalink)  
Antiguo 29/08/2008, 07:40
scorm
 
Fecha de Ingreso: julio-2008
Mensajes: 85
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Usar drag & drop con javascript

El resto del código... que no cabía en el anteior post tampococo :)

Código HTML:

/*
 * Funcion para borrar el contenido de los contenedores
 *
*/
function borrar_contenedor(btnBorrar) {
    var nuestroDiv = descendiente = btnBorrar.parentNode;
    var nombre_boton=btnBorrar.name.split('_'); // b + id  datos del botón
     
    var recorrer=nuestroDiv.getElementsByTagName("div");
    for (i=0;i<recorrer.length;i++){
    alert(recorrer[i].id);
        var nombre_contenedor=recorrer[i].id.split('_'); // cont + id  o  nuevo + id
        if(nombre_contenedor[0]=="cont"){ //si es un contenedor
	        if(nombre_contenedor[1] == nombre_boton[1]){ // si coincide el identificador del contenedor con el identificador del botón pulsado, hay que borrar su contenido
	        	if(recorrer[i].ocupado){// si es el contenedor perteneciente al botón pulsado y está ocupado hay que eliminar el contenido
	
					//hacer una copia del siguiente nodo y despues eliminarlo
					
					var partes_div=recorrer[i+1].id.split('_');
					
			    	var nuevoDiv = document.createElement("DIV");
			    	nuevoDiv.className="draggable";
			    	//nuevoDiv.style.align="center";
			    	nuevoDiv.id="bloq_"+partes_div[2];
		            nuevoDiv.appendChild(document.createTextNode(recorrer[i+1].firstChild.nodeValue));
					var posAnt=document.getElementById("margenDerecho");
					posAnt.appendChild(nuevoDiv);
					
					nuevoDiv.elObjDraggable=new Draggable(nuevoDiv, {revert: true});	
					        		
	        		//EN VEZ DE BORRAR EL SIGUIENTE, HACER LAS COMPROBACIONES
	        		recorrer[i+1].parentNode.removeChild(recorrer[i+1]);//elimino el siguiente porque se muestra en orde
	        		
	        		recorrer[i].ocupado=false;
	
	        	}
	    	}
	    }
	}
    


}

function confirmar_contenedor(obj){
    if(confirm('¿ Está seguro de que desea eliminar el contenido del contenedor ?')){
    	borrar_contenedor(obj);
    }
}
// -->
</script>

</head>

<body>
<form ENCTYPE="multipart/form-data" METHOD="post" name="form">
 <div id="contenedorppal">

	<div id="margenDerecho">
			<?
			$drop=5;
		    for($i=1;$i<$drop+1;$i++){?>	
				<div class="draggable" id="bloq_<? echo $i; ?>" align="center">Texto <? echo $i; ?></div>
			<?} //fin for
			 ?>		 	
	</div> <!-- fin div margenDerecho -->	


	<div>
	  <div align="center">
	      <input type="button" value="Add SubCapitulo" name="capitulo" onclick="capitulo_subcapitulo()"/> 
	 	 
	      <input type="submit" value="Enviar" name="enviar"/>
	  </div>
	</div>
	
	
	<div>
	  <div id="fiel" align='left'>
	    Título: <br><input type="text" name="cap3" onclick="foco=this" style="background-color: #eeeeee" onfocus="this.style.backgroundColor = '#cccccc'" onblur="this.style.backgroundColor = '#eeeeee'"/>            
	  </div>
	</div>  
	
 			
		
 <script type="text/javascript">
    var capas=document.getElementById("margenDerecho").getElementsByTagName("div");
    for (i=0;i<capas.length;i++){
		capas[i].elObjDraggable=new Draggable(capas[i].id, {revert: true});
	}
	
	


  </script>


 <div> <!-- fin <div> contenedor principal -->
</form>
</body>
</html>