0

ユーザーがボタンをクリックしたときに、ボタンのアクティブな画像と非アクティブな画像を切り替える jquery コードがあります。相対パスを使用して静的にウィンドウからすべてを実行すると、正常に動作します。

ただし、django dev ボックスに移行すると、jquery を介して相対パスを設定すると、ボタンをクリックしても目的のイメージをロードできません。他のすべての静的画像は相対パスを使用して css を介して正常に機能していますが、たとえば、ドキュメントの読み込み時に jquery を介して相対パスを設定すると、機能しません。パスが同じであり、jqueryがそれらを正しく設定していることを検査要素で確認しました。

さまざまな相対パスを 20 分間試した後、開発サーバーの絶対パスの設定、つまり "url('http://127.0.0.1:8000/static/img/img.jpg').この方法には柔軟性と展開に制限があるため、相対パスを機能させたいと考えています。

django 静的ファイル サービスの制限に遭遇していますか? バグを見つけましたか?または、私が見逃しているものがありますか?

前もって感謝します!

4

1 に答える 1

2

私は Django を知りませんが、サーバー側のフレームワークがルート パスを提供する場合の 1 つの方法は、それをメイン ドキュメントの JavaScript にエクスポートすることです。

<script>
 templateRootPath = {{% static "path to your template dir" %}}
</script>

次に、必要に応じて使用します。

$('#mybutton').css('background,"url('"+templateRootPath+"/img/img.jpg')");
于 2012-08-17T08:50:53.473 に答える