我在我的网站上设置了一个 hashchange 函数,它允许我在“关于”页面上的 6 个不同部分之间切换,这很好用,它将哈希附加到每个部分没有问题。
我遇到的问题是,当您从另一个页面链接到这些哈希时,它们无法加载相关内容,例如:www.thisisawebsite.com/about/#section03
当您在 about 页面上时,哈希工作正常,但来自其他任何地方它只加载section01。
jQuery(document).ready(function(){
jQuery('.about').hide();
jQuery('#section01').show();
jQuery(function(){
jQuery(window).on('hashchange', function(){
var hash = window.location.hash;
jQuery('.sub-menu').each(function(){
jQuery('.about').hide();
if (jQuery(this).attr('hook') === hash.replace('#section', '')) {
jQuery('#section'+jQuery(this).attr('hook')).fadeIn();
return false;
}
});
});
});
jQuery(window).trigger('hashchange');
});
这可以解决吗,因为我想要使用 hashchange 函数的整个想法是这样我不必有 6 个单独的页面,我可以在一个页面上显示/隐藏每个部分并使用哈希链接到它们。