最佳答案
我认为这可能是不可能的,将尽力解释,我可以。 我有一个包含选项卡(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
,然后显示适当的选项卡。
页面不会因为“返回 false”而“跳转”到锚点。
但是,此事件仅在单击事件上触发。因此,如果我从任何其他页面访问我的“标签”,“跳转”效应就会被触发。为了解决这个问题,我会自动滚动到页面的顶部,但我宁愿这种情况不要发生。
有没有办法在页面加载时模拟“ return false”,防止锚“跳转”发生。
希望我说得够清楚了。
谢谢