¿Previene el desplazamiento del elemento principal cuando la posición de desplazamiento del elemento interno alcanza la parte superior / inferior? [duplicar
Esta pregunta ya tiene una respuesta aquí:
prevent Desplazarse burbujeando de elemento a ventana 14 respuestas Tengo una pequeña "caja de herramientas flotante" - un div conposition:fixed; overflow:auto
. Funciona bien.
Pero cuando se desplaza dentro de ese cuadro (con la rueda del mouse) y llega a la parte inferior O superior, el elemento padre "asume" la "solicitud de desplazamiento": el documento detrás de la caja de herramientas se desplaza.
- Lo cual es molesto y no lo que el usuario "solicitó".
Estoy usando jQuery y pensé que podría detener este comportamiento con event.stoppropagation ():$("#toolBox").scroll( function(event){ event.stoppropagation() });
Entra en la función, pero aún así, la propagación ocurre de todos modos (el documento se desplaza)
- Es sorprendentemente difícil buscar este tema en SO (y Google), así que tengo que preguntar:
¿Cómo evitar la propagación / burbujeo del evento de desplazamiento?
Editar
Solución de trabajo gracias a amustill (y Brandon Aaron para el mousewheel-plugin aquí:
https: //github.com/brandonaaron/jquery-mousewheel/raw/master/jquery.mousewheel.j
$(".ToolPage").bind('mousewheel', function(e, d)
var t = $(this);
if (d > 0 && t.scrollTop() === 0) {
e.preventDefault();
}
else {
if (d < 0 && (t.scrollTop() == t.get(0).scrollHeight - t.innerHeight())) {
e.preventDefault();
}
}
});