2

一見単純な状況に見えますが、まだ解決策を見つけていません。一時的な開発リンクは次のとおりです。

[[削除された URL]]

ご覧のとおり、フルスクリーンの Google マップを見ています。ページに現在地へのアクセスを許可すると、ズームインされます。もう一度「世界」にズームアウトしたい場合は、右上の地球アイコンをクリックします。

私の質問は、その「世界」レベルへのズームアウトに関連しています。私は現在、そのためにズームレベル3を使用しています。ただし、結果は、使用するビューポートのサイズ/DPI に大きく依存します。ズーム レベル 3 はデスクトップではほぼ正しいですが、スマートフォンではズームインしすぎて、アフリカしか表示されません。ゼロに設定すると、スマートフォンに適したものになりますが、デスクトップでは世界が何度も表示されます.

私が必要としているのは、ビューポートのサイズに関係なく、ビュー内の全世界を正確に実現するズーム レベルを確実に設定する方法です。これには簡単な方法があると思っていましたか?ここで本当に重要なことを見落としているような気がします。

私の質問はマーカーに関連していないことに注意してください。マーカーに関係なく、世界が一度だけ画面に収まるようにしたいだけです。

4

2 に答える 2

2

できません。近づくことはできますが、個別のズーム レベルがあります。

私は試してみます:

var worldBounds = new google.maps.LatLngBounds(new google.maps.LatLng(-85,-180),
                                               new google.maps.LatLng(85,180));
map.fitBounds(worldBounds);

次に、両方のプラットフォームで最適な妥協点となるように worldBounds を調整します。

于 2013-07-01T20:30:27.587 に答える