Вкладки jQuery предотвращают прокрутку до привязки

Я использую вкладки jQuery, такие как ths...

   <div id="tabs">
       <ul class="tabs-menu">
           <li><a href="#tab1" class="selected">Tab 1</a></li>
           <li><a href="#tab2">Tab2</a></li>
        </ul>

        <div id="tab1">
            Tab1 Content
        </div>
        <div id="tab2">
             Tab2 Content
        </div>
   </div>

jQuery(document).ready(function() {
    jQuery('#tabs').tabs();
});

Это работает правильно, но когда я пытаюсь открыть URL-адрес с активной вкладкой 2 с помощью www.example.com/page#tab2, страница прокручивается до точки привязки, а не загружается сверху.

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


person fightstarr20    schedule 04.05.2017    source источник
comment
Покажите свой код jquery для вызова вкладки?   -  person Shree    schedule 04.05.2017
comment
Обновили операцию сейчас с помощью jQuery   -  person fightstarr20    schedule 04.05.2017


Ответы (2)


Вы также можете попробовать это.

<script src="https://code.jquery.com/jquery-1.12.4.js></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"></script>


<div id="tabs" style="margin-top: 2%;min-height: 500px;">
      <ul style="background: -webkit-linear-gradient(left top, #286090, #3b8a69); ">
        <li><a href="#tabs-1">Menu privilege</a></li>
        <li><a href="#tabs-2">Transaction Rule</a></li>

      </ul>
      <div id="tabs-1">
        <h1>
        Tab1</h1>

      </div>
      <div id="tabs-2">
        <h1>
        Tab 2</h1>
      </div>
      </div>

jQuery(document).ready(function() {
    jQuery('#tabs').tabs();
});
person techhunter    schedule 04.05.2017

Вы можете использовать tabsselect listener .

$(document).ready(function () {
        $("#tabs").bind('tabsselect', function(event, ui) {
            event.preventDefault();  // This will kill the default behavior.
            window.location.href = ui.tab;
        });
});
person Shree    schedule 04.05.2017
comment
evt.preventDefault(); может делать то, что вы хотите. Смотрите обновление. - person Shree; 04.05.2017