1

いくつかのマーカーが表示されているGoogleマップがあります。http://chart.apis.google.com/chart?chst=d_map_xpin_icon&chld=pin|glyphish_star|FFFF00|0000FFからマーカーを取得しています。一部のクライアントのブラウザセキュリティでは、これらの画像のダウンロードが妨げられています。これを検出して、デフォルトの画像に戻したいと思います。

var gmMarkerImage = new google.maps.MarkerImage(
  "http://chart.apis.google.com/chart?chst=
    d_map_xpin_icon&chld=pin|
    glyphish_star|
    FFFF00|
    0000FF"
)

gmMarkerImageオブジェクトが画像ではないか空でないかを検出するにはどうすればよいですか?または、chart.apis.google.comサイトから何も受け取っていないことを確認するにはどうすればよいですか?

4

1 に答える 1

0

Google Maps APIでは、基盤となるDOMオブジェクトにアクセスできないと思います。受け取ったMarkerImageオブジェクトにはマーカーに関する情報のみが含まれ、HTMLまたはDOMオブジェクトがその情報を読み取るようにレンダリングします。

ただし、一歩後退すると、ユーザーがこのカスタムURLを画像に使用できない理由は、おそらく非SSL参照を信頼していないためです(本当ですか?)。または、一般的にchart.google.comドメインを信頼していないこと(これは遅れますが、それでも)。マップに接続されていないページに非表示の画像を含めてこれをテストし、onErrorこの画像でイベントを処理できます。画像のonError上のは、通常、404、403などが原因で、リソースを読み込めなかったことを示します。この画像がエラーを受け取った場合、すべてのマーカーを繰り返し処理して、URLをフォールバックに設定できます。

于 2012-07-18T18:01:37.743 に答える