Я думаю, что это может быть невозможно, постараюсь объяснить так хорошо, как я жестяная банка. У меня есть страница с вкладками (на основе 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" при загрузке страницы, предотвращение "прыжка" привязки.
надеюсь, что это достаточно ясно.
спасибо