the tag link full attribute anchor href hashtag

anchor - tag - html title attribute



href="#" ¿Ir a la parte superior de la página-Prevenir? (4)

Esta pregunta ya tiene una respuesta aquí:

Tengo una página con algunas funciones de jQuery. El HTML en la página se ve así:

<a href="#" class="service">Open</a>

Cuando hago clic en el botón Abrir, un panel oculto se desliza hacia afuera. El jQuery en sí funciona muy bien, sin embargo, cuando hago clic en el botón, también me lleva a la parte superior de la página.

¿Es este el comportamiento de defecto y cómo puedo evitar que cada href="#" me lleve a la parte superior de la página?

Nota: podría agregar ID y decirle a la href que dirija a esa ID. No quiero hacerlo por varias razones (incluida la adición de códigos innecesarios).


En su controlador de eventos, agregue e.preventDefault(); (asumiendo que e es el nombre de la variable que contiene el evento):

$(''.service'').click(function(e) { e.preventDefault(); });


$(''service'').click(function() { <your code> return false; });

return false anula el comportamiento estándar de la etiqueta ''a'' e impide que el navegador vuelva a la parte superior de la página cuando se hace clic.


<a href="#!" class="service">Open</a>


<a href="#" onclick="return false;" class="service">Open</a>

O

$(document).ready(function() { var a = $(".service"); a.click(function() { return false; }); });

O

$(document).ready(function() { var a = $(".service"); a.click(function(e) { e.preventDefault(); }); });

O

<a href="#" onclick="event.preventDefault();" class="service">Open</a>