API خرائط Google API تتيح crollwheelzoom () - لماذا لا يتصغير بشكل صحيح؟
-
25-09-2019 - |
سؤال
لذلك لدي مشكلة مع خريطة Google باستخدام البلاط المخصص ، لكنني تمكنت من تبسيطها إلى المثال أدناه.
أخذ مثال بسيط توفر Google مع عناصر التحكم لقد أضفت الخط
map.enableScrollWheelZoom();
هذا يعطيني HTML البسيطة:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example: Controls</title>
<script src="http://maps.google.com/maps?file=api&v=2" type="text/javascript"></script>
<script type="text/javascript">
function initialize() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map_canvas"))
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.enableScrollWheelZoom();
}
}
</script>
</head>
<body onload="initialize()" onunload="GUnload()">
<div id="map_canvas" style="width: 500px; height: 300px"></div>
</body>
</html>
يبدو كل شيء جيدًا حتى تقوم بتصغير مستوى التكبير القصوى باستخدام عجلة الماوس (عرض العالم كله). حوالي نصف الوقت يتم عالقه عند مستوى التكبير قبل الأخير. التمرير حوله يعطي بلاط الخريطة على كلا مستويين التكبير.
لقد حاولت في Chrome و IE8 و FF3.6 وكلهم يتصرفون نفس الشيء.
أي أفكار؟
نشأ كخطية - http://code.google.com/p/gmaps-api-issues/issues/detail؟id=2218
المحلول
غريب جدا. تمكنت من إعادة إنتاج هذا الخطأ مع خرائط عينة أيضًا: http://gmaps-samples.googlecode.com/svn/trunk/scrollzoom/scrollzoom.htm
يبدو أن تمكين التكبير المستمر يحل المشكلة.
يضيف map.enableContinuousZoom();
بعد map.enableScrollWheelZoom();
حظا طيبا وفقك الله!