0

クエリ文字列パラメーターを含む URL を使用していくつかのサムネイルを生成しています。

http://localhost:7229/GenerateImage.ashx?image=/media/map-v2.png&width=320&height=200

jqueryを使用して、この画像を要素の背景に割り当てようとしています:

<div id="myDiv"></div>

<script type="text/javascript">
  $(document).ready(function() {
    $('#myDiv').css("background-image", "http://localhost:7229/GenerateImage.ashx?image=/media/map-v2.png&width=320&height=200");
  });
</script>

ただし、画像は表示されません。ブラウザ ウィンドウに URL を入力すると、期待どおりに画像が返されますが、何らかの理由で jquery を使用して背景画像として割り当てることができません。

ここで私が間違っていることを誰かが知っていますか? css で動的に生成された画像を使用する際に問題はありますか?

ありがとう

4

2 に答える 2

1

次のコードで動作するはずです:

$('#myDiv').css("background-image", "url(http://localhost:7229/GenerateImage.ashx?image=/media/map-v2.png&width=320&height=200)");

背景画像を追加するために url() を適用するのを忘れました。

于 2012-09-26T10:03:10.863 に答える
1

これは機能するはずです。正しい background-image 構文を使用していませんでした:

<script type="text/javascript">
  $(document).ready(function() {
    $('#myDiv').css("background-image", "url(http://localhost:7229/GenerateImage.ashx?image=/media/map-v2.png&width=320&height=200)");
  });
</script>

他に 2 つの変更を提案できますか。

  1. URL の画像パラメータは URL エンコードする必要があります
  2. $(function(){})代わりに使用する方がきれいです$(document).ready(function(){})

したがって、次のように書き直します。

<script type="text/javascript">
  $(function() {
    $('#myDiv').css("background-image", "url(http://localhost:7229/GenerateImage.ashx?image=%2Fmedia%2Fmap-v2.png&width=320&height=200)");
  });
</script>
于 2012-09-26T10:01:51.397 に答える