Foros del Web » Programando para Internet » Javascript »

Problema con script "Drag & Drop" y un Input

Estas en el tema de Problema con script "Drag & Drop" y un Input en el foro de Javascript en Foros del Web. Hola, hace poco me descargué un javascript para poder mover los divs de mi página mientras clickara sobre ellos. El script usado fue este. Código: ...
  #1 (permalink)  
Antiguo 21/05/2010, 05:51
 
Fecha de Ingreso: junio-2007
Ubicación: Sabadell, BCN
Mensajes: 95
Antigüedad: 16 años, 10 meses
Puntos: 1
Pregunta Problema con script "Drag & Drop" y un Input

Hola, hace poco me descargué un javascript para poder mover los divs de mi página mientras clickara sobre ellos. El script usado fue este.

Código:
function carga()
{
	posicion=0;
	// IE
	if(navigator.userAgent.indexOf("MSIE")>=0) navegador=0;
	// Otros
	else navegador=1;
}
function evitaEventos(event)
{
	// Funcion que evita que se ejecuten eventos adicionales
	if(navegador==0)
	{
		window.event.cancelBubble=true;
		window.event.returnValue=false;
	}
	if(navegador==1) event.preventDefault();
}
function comienzoMovimiento(event, id)
{
	elMovimiento=document.getElementById(id);
	 // Obtengo la posicion del cursor
	if(navegador==0)
	 {
		cursorComienzoX=window.event.clientX+document.documentElement.scrollLeft+document.body.scrollLeft;
		cursorComienzoY=window.event.clientY+document.documentElement.scrollTop+document.body.scrollTop;
		document.attachEvent("onmousemove", enMovimiento);
		document.attachEvent("onmouseup", finMovimiento);
	}
	if(navegador==1)
	{
		cursorComienzoX=event.clientX+window.scrollX;
		cursorComienzoY=event.clientY+window.scrollY;
		document.addEventListener("mousemove", enMovimiento, true);
		document.addEventListener("mouseup", finMovimiento, true);
	}
	elComienzoX=parseInt(elMovimiento.style.left);
	elComienzoY=parseInt(elMovimiento.style.top);
	// Actualizo el posicion del elemento
	elMovimiento.style.zIndex=++posicion;
	evitaEventos(event);
}
function enMovimiento(event)
{
	var xActual, yActual;
	if(navegador==0)
	{
		xActual=window.event.clientX+document.documentElement.scrollLeft+document.body.scrollLeft;
		yActual=window.event.clientY+document.documentElement.scrollTop+document.body.scrollTop;
	}
	if(navegador==1)
	{
		xActual=event.clientX+window.scrollX;
		yActual=event.clientY+window.scrollY;
	}
	elMovimiento.style.left=(elComienzoX+xActual-cursorComienzoX)+"px";
	elMovimiento.style.top=(elComienzoY+yActual-cursorComienzoY)+"px";
	evitaEventos(event);
}
function finMovimiento(event)
{
	if(navegador==0)
	{
		document.detachEvent("onmousemove", enMovimiento);
		document.detachEvent("onmouseup", finMovimiento);
	}
	if(navegador==1)
	{
		document.removeEventListener("mousemove", enMovimiento, true);
		document.removeEventListener("mouseup", finMovimiento, true);
	}
}
window.onload=carga;
Fuente: http://www.formatoweb.com.ar/blog/20...sin-librerias/

Todo parecía funcionar perfectamente, hasta que dentro de uno de los divs que quería mover, puse un input (un campo de texto), en el cual, cuando intentas seleccionar el texto, en vez de seleccionarlo, se sigue moviendo el input.

Aquí pongo un ejemplo de lo que pasa:
http://lantania.es/Trash/dragdrop.php

Cómo podría solucionar esto?

Gracias

Etiquetas: input
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:25.