3

機能に問題がありhistory.back()ます。

私は3つのページA、B、Cを持っています:

  • 1 つ目 (A) には 2 つ目 (B) へのリンクがあり、リンクにはパラメーター (?id=..) が含まれています。
  • B には C へのリンクがあります
  • でCからBに戻りhistory.back()ます。

問題は、back()関数が実際にはパラメーターを含む (履歴からの) A から B へのリンクを使用することですが、これらを変更する必要があります。

そこでhistory.back()、単純な href に変更しましたが、もちろん、戻るをクリックすると、C ページに戻ります (これは望ましくありません)。

back()では、さまざまなパラメーターで使用するソリューションはありますか? (私はAngularを使用しています。何かが役立つかもしれません)。

A.html :

<body ng-controller="AuthentCtrl">
    <div align="center">
        <button ng-click="location.href = 'view/listing.html?id=' + id + '&first=' + newAuthent;">Go!</button>
        <br/>
    </div>
</body>

B.html

<body onload="init()">
<script>
    function init(){
        var params = location.search.substring(1).split('&');
        id = params[0].split('=')[1];
        var firstCo = params[1].split('=')[1];
        // execute some code, function of parameters
    }
</script>
</body>

C.html

<body>
    <div align="center">
        <button ng-click="history.back()">Go!</button>
        <br/>
    </div>
</body>
4

1 に答える 1

2

JavaScript で履歴を変更する方法はありません。

ページ「A」または「C」から来ている場合、リファラープロパティを使用してページ「B」を調べてみましたか?

于 2013-04-30T13:47:01.877 に答える