Javascript History.pushState前进和后退历史

时间:2016-11-27 19:47:56

标签: javascript jquery

当用户点击浏览器后退和前进按钮时,我需要一个事件。我有这段代码可以工作,但无论我点击哪个按钮(向后和向前),它都会执行。如何单独处理向后和向前按钮点击?

代码:

if ( window.history && window.history.pushState ) {
    window.history.pushState( 'forward', null, './#forward' );

    $( window ).on( 'popstate', function() {
        alert( 'Hello back/forward button!' );
    } );
}

是否也可以隐藏网址中的#forward字符串?

1 个答案:

答案 0 :(得分:1)

使用方向:

$(window).on('navigate', function (event, data) {
  var direction = data.state.direction;
  if (direction == 'back') {
    // do something
  }
  if (direction == 'forward') {
    // do something else
  }
}

});