AJAX を使用してコンテンツを動的に div にロードするサイトがあります。
そのためのリンクは、href="#" を含むアンカーと、AJAX をトリガーする onclick イベントです。
これにより、クリックして戻ったときに履歴が残らないため、あるページをロードしてから別のページをロードしてクリックしても何も起こりません。
コードの基本的なバージョンは次のとおりです。
<script type="text/javascript">
function loadXMLDoc(url)
{
<!-- Load XML Script here. -->
}
</script>
</head>
<body>
<div id="myDiv">
<!-- Target div. -->
</div>
<a href="#1" onclick="loadXMLDoc('1.txt')">Click Me.</a>
<a href="#2" onclick="loadXMLDoc('2.txt')">Click Me.</a>
<a href="#3" onclick="loadXMLDoc('3.txt')">Click Me.</a>
</body>
私が知りたいのは、各リンクに異なる「#」を付けてから、popstate ハンドラーを使用して適切なイベントを呼び出すことができるかということです。したがって、リンク 1、2、3 の順にクリックしてから戻るボタンを押し始めると、 2 に戻り、次に 1 に戻ります。
history.js を使用し、loadXML スクリプトで pushstate の使用を開始する予定でしたが、履歴の操作全体が少し汚れていて信頼性が低いと思います。
私は正しい線で考えていますか、それとももっと良い方法がありますか?
現在、私のリンクはすべて「#」を使用しているため、さらにコンテンツをロードするとページの上部に戻りますが、可能であれば戻ることができるようにしたいと考えています.
どんな助けでも素晴らしいでしょう。