これは私の質問とはあまり関係ありませんが、背景を説明します。MapBox API を使用してマップを作成しました。次に、Leaflet-hash というプラグインを実装したいと考えました。これは基本的に、マップ内の現在の位置を URL ハッシュに格納します。次のようになります。
http://localhost/#5/12.123/60.123
したがって、マップをパンするたびに、座標が更新され、ハッシュが変更されます。これは、別のクリーンな HTML ページで正常に機能しました。しかし、Django サイトでプラグインを使用しようとすると、動作しなくなりました。
プラグインはlocation.replace('#'+coordinates);
ハッシュを更新するために使用します。何らかの理由で、これにより Django フレームワーク内でページがリロードされます。また、座標は URL に追加されますが、ハッシュ記号はありません。これには、明らかに望ましくない影響があります。この動作の原因はわかりませんが、次のことがわかりました。
location.replace('#')
つまり、ページをリロードせずに URL にハッシュを追加します。location.replace('#'+'randomWord')
期待どおりに動作します。location.replace('#'+map.getCenter().toString())
ハッシュ記号なしで文字列を URL に追加して、ページをリロードします。location.replace('#'+d3.version)
D3がJavascriptライブラリである場合、同じことが起こります。ページがリロードされます。
この動作を取得したい (ハッシュ ボタンを参照): https://www.mapbox.com/mapbox.js/example/v1.0.0/toggling-ui/