iframe + hash实现前进后退的问题

export function init(){
    
    $('.c-nav-wrapper').on('click','li',function(){
         $('.c-footer').hide();
         var target = $(this).attr('data-url'); //data-url = "/地址"

         if(target){
              location.href = '/#' + $(this).data('url');
         };
 
    });

    window.onhashchange = function(){
        var hash = location.hash;
        hash = hash.substring(1,hash.length);
        $('#ifm').attr('src', hash + '.html');
        console.log(history);
    }

}

我这样写为什么还会出现点击两次后退才能回退的问题?请问我哪里错了?谢谢各位

阅读 3.8k
1 个回答

看不出啥啊。。。你这个事件监听有没有可能触发了多次? onhashchange是不是触发了两次?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题