Как отключить «прыжок» привязки при загрузке страницы?

Я думаю, что это может быть невозможно, постараюсь объяснить так хорошо, как я жестяная банка. У меня есть страница с вкладками (на основе jquery), управляемая следующим образом:

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

<script type="text/javascript">
    $(function() {

     $('html, body').animate({scrollTop:0}); // this is my "fix"

        var tabContent = $(".tab_content");
        var tabs = $("#menu li");
        var hash = window.location.hash;
     tabContent.not(hash).hide();
        if(hash=="") {
      $('#tab1').fadeIn();
     }
        tabs.find('[href=' + hash + ']').parent().addClass('active');

        tabs.click(function() {
            $(this).addClass('active').siblings().removeClass('active');
            tabContent.hide();
            var activeTab = $(this).find("a").attr("href");

            $(activeTab).fadeIn();
           return false;
        });

    });
</script>

этот код отлично работает, когда я просматриваю «вкладки» страницу напрямую.

однако мне нужно создать ссылку на отдельные вкладки с других страниц - для этого код получает window.location.hash , а затем показывает соответствующую вкладку.

страница не "перескакивает" на якорь из-за "return false".

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

есть ли способ имитировать "return false" при загрузке страницы, предотвращение "прыжка" привязки.

надеюсь, что это достаточно ясно.

спасибо

101
задан Rubens Mariuzzo 9 April 2015 в 02:48
поделиться