Estoy hablando en teoría en cuanto a No soy un experto, pero he conseguido el resultado deseado mediante el uso de que el pequeño (e), que no tiene por qué ser un e lol
lo he descubierto. Es una manera de pasar el mismo evento de una función a otra.
En términos más simples. Quería que la navegación de la página fuera una función de desplazamiento elástico, sin embargo, quería que la página navegara "y" quería que se pudiera hacer clic en la misma navegación en determinadas condiciones. También quería la misma navegación dinámica desde otros eventos de clic que no eran enlaces. Para mantener el objetivo actual y seguir usando la función de navegación, tuve que configurar el pequeño (e) porque jQuery perderá el alcance de $ (this) como el mismo objetivo de la función lol. Aquí hay un ejemplo rápido.
function navigate_to_page(e){
var target = $(e.currentTarget).attr('href'); //--This is the same as $(this) but more static to bring out of it's scope
$('html, body').animate({
'scrollTop':$(target).offset().top-0,
'scrollLeft': $(target).offset().left-$(window).width()*0.0}, 2000, 'easeOutBounce');
}
no deje que la jerga te confunda. Es solo una simple animación de desplazamiento de página. Lo que debe tener en cuenta es e.currentTarget. e es nuestra variable y currentTarget es un jQuery equivalente a $ (esto) por lo que las juntas son una función Globular $ (this). Ahora me llaman por otra función con condistions al igual que
$('#myNavigationDiv a').on('mouseenter', function(e){
if($(myCondition) === true){
return false;
}else{
navigate_to_page(e);
}
});
Vea cómo el pequeño (e) unido todo junto?
Ahora puede sustituir (e) a (whateveryouwant). Al invocar e en ambas funciones, coincidió con e .Torrent actual y puede aplicar esto a cualquier función específica detallada que necesite y ahorrarse LITERALMENTE las páginas del código lol
Parece que necesitamos una respuesta que explique cómo la función anónima logra un valor para 'e'. Esto estaría fuera de jQuery, pero una respuesta específica de JavaScript. – knownasilya