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