Подтвердить что ты не робот

Href= "#" Перейти к началу страницы - Предотвратить?

У меня есть страница с некоторыми функциями jQuery. HTML на странице выглядит так:

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

Когда я нажимаю кнопку "Открыть", скрывается скрытая панель. Сам jQuery отлично работает, когда я нажимаю кнопку, это также приводит меня к началу страницы.

Является ли это поведение defualt и как я предотвращаю, чтобы каждый href="#" мог забрать меня в начало страницы.

Примечание. Я мог бы добавить id и сообщить href, чтобы направить этот идентификатор. Я не хочу делать это по разным причинам (включая добавление ненужного кода).

4b9b3361

Ответ 1

В обработчике событий добавьте e.preventDefault(); (предполагая, что e - имя переменной, содержащей событие):

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

Ответ 2

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

Ответ 3

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

ИЛИ

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

       return false;

   });
});

ИЛИ

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

       e.preventDefault();

   });
});

ИЛИ

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

Ответ 4

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

return false переопределяет стандартное поведение тега 'a и останавливает браузер, вернувшись в верхнюю часть страницы при нажатии.