Estoy construyendo un método de arrastrar y soltar, mediante consulta -onmousedown conduce a -onmousemove (arrastre) y luego -onmouseup (desenlaza onmousemove)arrastrar y soltar, ¿evitar resaltar incómodo?
el problema es, por defecto del navegador comenzar destacando onmousemove, que vuela en todo la página y cancela el evento, dejándolo inutilizable. Alguna idea de cómo prevenir el resaltado, para prevenir. Por defecto, parece no estar funcionando. aquí es mi código (sí, está muy descuidado, lo siento!)
$(".middleRow").mousedown(function(){
calculateSelection();
$('body').append('<div class="messageDrag" style="display:block">'+numSelected+'<div style="font-size: 18px">messages</div></div>');
$(document).mouseup(function(){
$('.messageDrag').fadeOut(500);
setTimeout(function(){
$('.messageDrag').remove();
}, 500);
$(document).unbind();
})
$(document).mousemove(function(e){
e.preventDefault();
var x = e.pageX;
var y = e.pageY;
$(".messageDrag").css("left", x-49);
$(".messageDrag").css("top", y-49);
});
});
no quiero eliminar completamente el resaltado, solo durante este estado de arrastre. pero podría lanzar este CSS a través de una consulta como tal, ¿tiene esto compatibilidad total con el navegador? – roozbubu
sí debería cubrir la mayoría de los navegadores modernos (de ahí todos los prefijos de proveedor, incluso ms), podría hacer '$ (elemento) .css ({// el css anterior});' cuando se inicialice el arrastre, y establecerlos en ' auto' una vez que la gota está hecha. –
hmm ... esto no parece prevenir el resaltado, simplemente se deshace de él visualmente. el problema más grande fue el acto de resaltar (cuando el usuario comienza a arrastrar sobre el texto, se resalta, o si al principio arrastra sobre él, cancela el arrastre y comienza a resaltar) y está arruinando la función de arrastrar y soltar. – roozbubu