- 締切済み
google map api v3のカスタムオーバーレイで、png画像
google map api v3のカスタムオーバーレイで、png画像を地図上に何枚もはりつけています。拡大したところ貼り付けたpng画像がぼやけてしまいます。ぼやけないようにできますか? あと、読み込み指定した(URL指定した)png画像ファイルがない場合に、読み込まないようにしたいのですが、どうすればよいでしょうか?教えてください。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- yyr446
- ベストアンサー率65% (870/1330)
イメージがあるか無いかのチェックとして、 こんなんどうですか function check_image(url){ if(XMLHttpRequest) var XHR = new XMLHttpRequest(); else var XHR = new ActiveXObject("Msxml2.XMLHTTP"); XHR.open("GET",url,false); XHR.send(null); return (XHR.status=="200")?true:false; XHR=null; } alert(check_image("/image/yui.jpg")); //存在すればとゆうか、WEBサーバーが'200'を返せばtrueをアラートする。
- yyr446
- ベストアンサー率65% (870/1330)
「拡大したところ貼り付けたpng画像がぼやけてしまいます。」 =>おそらく、そのオリジナルのpng画像のサイズ(解像度)が小さいからです。 jpeg画像や、圧縮無しのbmp画像にして、サイズ(大きさ)指定して、表示させれば、 ぼやけないでしょうが、何枚もあれば、ロードと表示にかかる時間が大きくなり、 快適に使えなくなる可能性があるでしょう。あるところで、妥協が必要です。 「読み込み指定した(URL指定した)png画像ファイルがない場合に、読み込まないようにしたい」 =png画像ファイルがない場合、ほっといても読み込まないと思いましたが、エラーに なりましたっけ。
補足
ありがとうございます。 png画像がない場合、googlemap上で、×表示されてしまいます。(url.src指定はしているので、HTMLの場合と同じような感じに表示されてしまいます。)×表示をさせたくないのですが・・・。if文で条件式を考えて、url.src指定を飛ばすか、div要素の設定をとばしたいのですが、Javascriptでのif文の条件式がうまくできません。たとえば、img.src.onerror などとしたのですが、だめでした。。。 何かうまい条件式があれば教えてください。よろしくお願いします。