SlideShare una empresa de Scribd logo
1 de 9
Descripción
Paso 1: Crear los elementos 
La primera parte de nuestro proceso consiste en 
crear el o los elementos que serán arrastrados, 
para ello debemos darle esta propiedad, es por eso 
que debemos agregar el atributo “draggable” con el 
valor “true”, dentro de la etiqueta que corresponde 
al elemento que queremos utilizar. 
Este atributo le indicará al navegador que este 
elemento se puede mover sin alguna objeción, por 
default los objetos no tienen permitido ser 
arrastrados, es por ello que si no agregamos el 
atributo “draggable” el objeto no podrá ser movido.
Paso 2: hacer draggable el 
elemento 
Como segundo paso debemos 
mandar llamar la función “drag” de 
Javascript, existen varios formas 
de hacerlo, una manera sencilla es 
agregarle el atributo “ondragstart” 
en cuyo valor mandaremos llamar 
a la función. Por lo tanto, si 
queremos hacer que una imagen 
se pueda arrastrar debemos 
escribir el siguiente código: 
<img id="img" draggable="true" src=“ruta_foto.jpg" ondragstart="drag(this, event)"/>
Para poder incluir texto junto con nuestra imagen 
le agregamos la propiedad al párrafo. 
<p id="parrafo" draggable="true" id="span" ondragstart="drag(this, event)"> 
<img id="img" src=“ruta_foto.jpg" /> 
<span id="span">Puedes arrastrarme</span> 
</p> 
Y en Java Script pondremos: 
function drag(parrafo, evento) { 
evento.dataTransfer.setData('Text', parrafo.id); 
}
Paso 3: dar formato a los 
elementos 
Después de crear los elementos que queremos 
arrastrar, pasamos a darle forma al contenedor donde 
los soltaremos; para ello podemos elegir un elemento 
div el cual deberá llevar los atributos “ondrop”, 
“ondragenter” y “ondragover”. 
El atributo “ondrop” permitirá llamar la función 
Javascript para llevar la tarea una vez que el elemento 
ha sido soltado sobre el contenedor. Dado que el 
comportamiento por defecto del navegador es cancelar 
soltados, devolver false en los atributos “dragenter” y 
“dragover” permitirá el movimiento. 
<div id="contenedor" ondrop="drop(this, event)" ondragenter="return 
false" ondragover="return false">Contenendor</div>
Por su parte en la función 
&quot;drop&quot; de Javascript debemos 
llamar a preventDefault(), para indicar que 
el soltado es permitido en esa zona. 
function drop(contenedor, evento) { 
var id = evento.dataTransfer.getData('Text'); 
contenedor.appendChild(document.getElementById(id)); 
evento.preventDefault(); 
}
Así se hace el HTML
Y así el CSS

Más contenido relacionado

Similar a Crear elementos arrastrables con drag y drop (20)

Drag and drop
Drag and dropDrag and drop
Drag and drop
 
En 20 minutos ... jQuery
En 20 minutos ... jQueryEn 20 minutos ... jQuery
En 20 minutos ... jQuery
 
Clase 12 jQuery basico
Clase 12  jQuery basicoClase 12  jQuery basico
Clase 12 jQuery basico
 
Clase 9 eventos
Clase 9 eventosClase 9 eventos
Clase 9 eventos
 
2_JSEventos.pdf
2_JSEventos.pdf2_JSEventos.pdf
2_JSEventos.pdf
 
Unidad 3 AJAX
Unidad 3 AJAX Unidad 3 AJAX
Unidad 3 AJAX
 
Unidad3ajax
Unidad3ajaxUnidad3ajax
Unidad3ajax
 
Jquery parte 1
Jquery parte 1Jquery parte 1
Jquery parte 1
 
INFOSAN Objetos en javascript
INFOSAN Objetos en javascriptINFOSAN Objetos en javascript
INFOSAN Objetos en javascript
 
Trucos universal analytics
Trucos universal analyticsTrucos universal analytics
Trucos universal analytics
 
Clase 6 objetos de javaScript
Clase 6 objetos de javaScriptClase 6 objetos de javaScript
Clase 6 objetos de javaScript
 
Como insertar una imagen en eclipse
Como insertar una imagen en eclipseComo insertar una imagen en eclipse
Como insertar una imagen en eclipse
 
Todo Javascript para canibales
Todo Javascript para canibalesTodo Javascript para canibales
Todo Javascript para canibales
 
Javascript de Canibales
Javascript de CanibalesJavascript de Canibales
Javascript de Canibales
 
Java Script de canibaless
Java Script de canibalessJava Script de canibaless
Java Script de canibaless
 
INFOSAN Objetos del navegador
INFOSAN Objetos del navegador INFOSAN Objetos del navegador
INFOSAN Objetos del navegador
 
Jquery
JqueryJquery
Jquery
 
Jquery 2
Jquery 2Jquery 2
Jquery 2
 
Como insertar una imagen en eclipse java
Como insertar una imagen en eclipse javaComo insertar una imagen en eclipse java
Como insertar una imagen en eclipse java
 
Web vr (spanish)
Web vr (spanish)Web vr (spanish)
Web vr (spanish)
 

Último

Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digitalNayaniJulietaRamosRa
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señorkkte210207
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 

Último (9)

Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digital
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 

Crear elementos arrastrables con drag y drop

  • 1.
  • 3. Paso 1: Crear los elementos La primera parte de nuestro proceso consiste en crear el o los elementos que serán arrastrados, para ello debemos darle esta propiedad, es por eso que debemos agregar el atributo “draggable” con el valor “true”, dentro de la etiqueta que corresponde al elemento que queremos utilizar. Este atributo le indicará al navegador que este elemento se puede mover sin alguna objeción, por default los objetos no tienen permitido ser arrastrados, es por ello que si no agregamos el atributo “draggable” el objeto no podrá ser movido.
  • 4. Paso 2: hacer draggable el elemento Como segundo paso debemos mandar llamar la función “drag” de Javascript, existen varios formas de hacerlo, una manera sencilla es agregarle el atributo “ondragstart” en cuyo valor mandaremos llamar a la función. Por lo tanto, si queremos hacer que una imagen se pueda arrastrar debemos escribir el siguiente código: <img id="img" draggable="true" src=“ruta_foto.jpg" ondragstart="drag(this, event)"/>
  • 5. Para poder incluir texto junto con nuestra imagen le agregamos la propiedad al párrafo. <p id="parrafo" draggable="true" id="span" ondragstart="drag(this, event)"> <img id="img" src=“ruta_foto.jpg" /> <span id="span">Puedes arrastrarme</span> </p> Y en Java Script pondremos: function drag(parrafo, evento) { evento.dataTransfer.setData('Text', parrafo.id); }
  • 6. Paso 3: dar formato a los elementos Después de crear los elementos que queremos arrastrar, pasamos a darle forma al contenedor donde los soltaremos; para ello podemos elegir un elemento div el cual deberá llevar los atributos “ondrop”, “ondragenter” y “ondragover”. El atributo “ondrop” permitirá llamar la función Javascript para llevar la tarea una vez que el elemento ha sido soltado sobre el contenedor. Dado que el comportamiento por defecto del navegador es cancelar soltados, devolver false en los atributos “dragenter” y “dragover” permitirá el movimiento. <div id="contenedor" ondrop="drop(this, event)" ondragenter="return false" ondragover="return false">Contenendor</div>
  • 7. Por su parte en la función &quot;drop&quot; de Javascript debemos llamar a preventDefault(), para indicar que el soltado es permitido en esa zona. function drop(contenedor, evento) { var id = evento.dataTransfer.getData('Text'); contenedor.appendChild(document.getElementById(id)); evento.preventDefault(); }
  • 8. Así se hace el HTML
  • 9. Y así el CSS