Альтернатива # pound знак хеш-тег для пустого href? - PullRequest
4 голосов
/ 02 февраля 2012

Итак, я сейчас работаю над сайтом, на котором есть функция jquery onClick. Ну, ссылка простая href="#".

Ну, каждый раз, когда на нее нажимают,

  1. Знак # добавляется к URL
  2. Сайт переходит в начало страницы

Есть ли лучшая альтернатива или я что-то не так делаю?

Ответы [ 5 ]

7 голосов
/ 02 февраля 2012

В обработчике кликов добавьте return false;.

3 голосов
/ 02 февраля 2012

Ваша функция onclick должна содержать return false. Или вы можете сделать это:

<a href="#" onclick="doSomething();return false;">click</a>
1 голос
/ 03 октября 2012

Немного поздно, но если вы используете jQuery, в вашем обработчике событий вы можете использовать

$("#myButton").on("click", function(e)
{
    // Whatever the button should do

    e.preventDefault();
});

. e.preventDefault() делает именно это, он предотвращает поведение по умолчанию, которое было бывыделите верхнюю часть страницы (что символ «#» представляет сам по себе).

0 голосов
/ 31 октября 2013

Я использую это как альтернативу

<a href="javascript:void(0)" onclick="doSomething();return false;">click</a>
0 голосов
/ 02 февраля 2012

Хеш, сопровождаемый идентификатором, является ссылкой на тег привязки с указанным идентификатором. Если тег привязки не существует, он, безусловно, может объяснить, почему он попадает в верхнюю часть страницы.

...