每当我按下后退按钮时,我都会尝试获取以前的状态。在检查中,我可以看到 popstate 函数也被调用为转发按钮。即使执行了 popstate 函数,它也不会返回到以前的状态。我无法理解如何正确协调事件,因为我是前端开发的新手。 提前谢谢!!
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
<script src="aid.js"> </script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<div id="one" ng-hide="val_1">{{val_1}} ONE </div>
<div id="two" ng-show="val_2">{{val_2}} TWO </div>
<button id="but" ng-click=myfun()> pressme </button>
</body>
</html>
援助.js
//the js code
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.val_2 = false;
$scope.val_1 = false;
$scope.myfun = function () {
$scope.val_1 = true;
$scope.val_2 = true;
history.pushState("","","new");
}
window.addEventListener('popstate',function()
{
$scope.val_2 = false;
$scope.val_1 = false;
});
});
查看 https://developer.mozilla.org/en-US/docs/Web/Events/popstate
Popstate 同时调用前进和后退按钮。