Вкладки пользовательского интерфейса JQuery заставляют экран «прыгать» - PullRequest
47 голосов
/ 28 октября 2008

Я использую последнюю версию вкладок jQuery UI . У меня есть вкладки, расположенные в нижней части страницы.

Каждый раз, когда я нажимаю на вкладку, экран перемещается вверх.

Как я могу предотвратить это?

Пожалуйста, посмотрите этот пример:

http://5bosses.com/examples/tabs/sample_tabs.html

Ответы [ 17 ]

1 голос
/ 03 декабря 2008

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

1 голос
/ 29 октября 2008
> var scroll_to_x = 0; var scroll_to_y =
> 0;
> $('.ui-tabs-nav').bind('tabsselect',
> function(event, ui) {
>     scroll_to_x = window.pageXOffset;
>     scroll_to_y = window.pageYOffset; }); $('.ui-tabs-nav').bind('tabsshow',
> function(event, ui) {
>     window.scroll(scroll_to_x, scroll_to_y); });

Спасибо за вашу помощь! Пожалуйста, дайте мне знать, что еще вы найдете.

Вышеприведенная функция работает (экран не перемещается постоянно) ... но экран очень шаткий при щелчке.

Вот простой пример, показывающий, как нажатие на вкладки приводит к тому, что экран переходит вверх (без кода выше) http://5bosses.com/examples/tabs/sample_tabs.html

Обратите внимание, что анимация не используется.

0 голосов
/ 09 мая 2016

В моем случае я обнаружил, что вкладка href=#example1 заставляла страницу переходить на позицию id. Добавление фиксированной высоты к вкладкам не имело никакого значения, поэтому я просто добавил:

$('.nav-tabs li a').click( function(e) { e.preventDefault(); });

0 голосов
/ 04 февраля 2015

У меня была такая проблема. Мой код был:

$("#tabs").tabs({
  hide: {
    effect: "fade",
    duration: "500"
  },
  show: {
    effect: "fade",
    duration: "500"
  }
});

Я просто удалил show, и это сработало как шарм!

 $("#tabs").tabs({
      hide: {
        effect: "fade",
        duration: "500"
      }
 });
0 голосов
/ 04 октября 2010

Вы пробовали:

fx: {opacity:'toggle', duration:100}
0 голосов
/ 25 августа 2010

заменить href = "#" на href = "javascript: void (0);" в элементе 'a'

работает 100%

0 голосов
/ 30 сентября 2009

У меня была та же проблема, плюс моя вращалась сама по себе, поэтому, если бы вы были внизу страницы, окно браузера было бы прокручиваться вверх до верха. Наличие фиксированной высоты для контейнера вкладок работало для меня. Все еще странно то, что если вы покинете окно или вкладку и вернетесь назад, он все равно будет прокручиваться. Но не конец света.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...