كيفية تعطيل تكبير عجلة الماوس على Google Streetview؟
-
25-09-2019 - |
سؤال
النظر في رمز المثال التالي:http://code.google.com/apis/maps/documentation/javascript/examples/streetview-simple.html
أستطيع أن أفعل scrollwheel: false
على mapoptions لتعطيل تكبير عجلة الماوس. لم يتم تنفيذ الميزة على شارع الشارع panoramaOptions.
في Chrome ، يمكنني تعطيل تكبير عجلة الماوس بأمان على StreetView ببساطة.
$('#pano *').bind('mousewheel', function(){
return false;
});
لكن هذا لا يعمل في مكان آخر. الرجاء مساعدتي في العمل في أعلى متصفحات 3-5؟
المحلول
يوجد الآن طلب ميزة مؤكد مع مشكلات API GMAPS http://code.google.com/p/gmaps-api-issues/issues/detail؟id=2557. دعونا نأمل أن يبحث مهندسو Google في الأمر عندما يحصلون على الأخطاء الأكثر أهمية. أكره أن أنفاسي ، لكنني سأوقف هذا الآن.
نصائح أخرى
وفقًا لـ subgurim.net ، هذه هي كيفية القيام بذلك ؛
[powerscript - other event]
CONSTANT integer WM_MOUSEWHEEL = 522
IF message.number = WM_MOUSEWHEEL AND & KeyDown (KeyControl!) THEN
message.processed = TRUE
RETURN 1
END IF
أدرك أنك تستخدم JavaScript ، وهذا مثال VB ، ولكن نأمل أن يساعد.
يمكنني استخدام الرمز أدناه لتجنب النقر المزدوج Zoom - متأكد تمامًا من أنه يمكن تكييفه لتمرير عجلة التكبير. التكبير: 1 كونه مرحلة التكبير المفضلة لدي هنا ، ولكن يمكن أن يكون أي شيء.
$("#panorama").dblclick( function(){
panorama.setPov( {
heading: panorama.getPov().heading,
pitch: panorama.getPov().pitch, zoom: 1
});
});
هناك حل بديل سهل: عن طريق إضافة طبقة قبل شارع StreetView مع مؤشر Z أعلى ، ستمنع وظيفة التكبير في StreetView.
<div id="panorama" style="position: absolute;left:0; top: 0;height: 100%; width: 100%; z-index: -1;opacity: 1"></div>
<div id="layerBeforePanorama" style="position: absolute;left:0; top: 0;height: 100%; width: 100%; z-index: 0;opacity: 1"></div>
<script>
var panoOptions = {
position: latlng,
pov: {
heading: 0,
pitch: 0
}
};
var pano = new google.maps.StreetViewPanorama(document.getElementById('panorama'), panoOptions);
</script>