我可以知道如何禁用谷歌地圖上的雙擊,以便雙擊谷歌地圖時信息窗口不會關閉?它可以通過谷歌地圖API來完成嗎?禁用谷歌地圖上的雙擊左鍵
26
A
回答
102
您可以禁用谷歌地圖通過設置以下google.maps.MapOptions object property雙擊縮放:
disableDoubleClickZoom: true
示例代碼:
var mapOptions = {
scrollwheel: false,
disableDoubleClickZoom: true, // <---
panControl: false,
streetViewControl: false,
center: defaultMapCenter
};
-10
它不能完成,你基本上必須阻止或防止事件發生。
你可以像EXT JS一樣嘗試類似createInterceptor()的東西。這會在事件觸發前觸發,並且您可以返回false以防止實際事件觸發,但我不確定它會在代碼中觸發事件之前阻止代碼執行。
3
如果是雙擊,則可以利用dblclick進行觸發,並且只需單擊一次即可在這種情況下觸發一次。
runIfNotDblClick = function(fun){
if(singleClick){
whateverurfunctionis();
}
};
clearSingleClick = function(fun){
singleClick = false;
};
singleClick = false;
google.maps.event.addListener(map, 'click', function(event) {// duh! :-(google map zoom on double click!
singleClick = true;
setTimeout("runIfNotDblClick()", 500);
});
google.maps.event.addListener(map, 'dblclick', function(event) {// duh! :-(google map zoom on double click!
clearSingleClick();
});
0
您需要一個外部var要這麼做:
var isDblClick;
google.maps.event.addListener(map, 'dblclick', function (event) {
isDblClick = true;
myDlbClickBelovedFunction();
});
google.maps.event.addListener(map, 'click', function (event) {
setTimeout("mySingleClickBelovedFunction();;", 200);
});
function mySingleClickBelovedFunction() {
if (!isDblClick) {
// DO MY SINGLE CLICK BUSINESS :)
}
// DO NOTHING
}
0
(請認爲這不是答案,只有像Ravindranath Akila一樣的解決方案已經回答了,因爲在更廣泛的解決方案中使用[例如。移動平臺]集中在一個沒有全局變量的可重用方法)
我們有類似的麻煩Win 8.1的移動應用程序。感謝Ravindranath Akila,我們最終確定了在一種方法中定義的解決方案,並檢查縮放並隨地圖中心移動。無論如何,有時候發生的是我們從地圖點擊中獲得的地址是錯誤的 - 歡迎進行改進。
// code
{
// adding event method
addGoogleClickEnventHandler(map, function(e) {
// example code inside click event
var clickLocation = e.latLng;
getAddress(clickLocation);
});
}
// function
function addGoogleClickEnventHandler(googleEventableObject, handlingFunction) {
var boundsChanged = false;
var centerChanged = false;
var singleClick = false;
function runIfNotDblClick(obj) {
if(singleClick && !boundsChanged && !centerChanged){
handlingFunction(obj);
}
};
googleEventableObject.addListener('bounds_changed', function() { boundsChanged = true; });
googleEventableObject.addListener('center_changed', function() { centerChanged = true; });
googleEventableObject.addListener('dblclick', function() { singleClick = false; });
googleEventableObject.addListener('click', function(obj) {
singleClick = true;
setTimeout(function() {
runIfNotDblClick(obj);
}, 200);
boundsChanged = false;
centerChanged = false;
});
}
相關問題
- 1. 禁用雙擊放大谷歌地圖,同時繪圖
- 2. 禁用谷歌地圖上的可點擊地標
- 3. 雙擊放大谷歌地圖API - Android
- 4. 左上角的谷歌地圖
- 5. 我如何能在谷歌地圖上禁用右鍵點擊信息窗口
- 6. 谷歌地圖在中心左上角
- 7. 谷歌地圖停留在左上角
- 8. 如何處理谷歌地圖(MapFragment)上的雙擊事件?
- 9. 谷歌地圖標記雙擊縮放地圖
- 10. Android谷歌地圖:雙擊地圖查看
- 11. 谷歌地圖(左)點擊事件觸發時,右鍵單擊不
- 12. 谷歌地圖API禁令?
- 13. 谷歌地圖如何打開和關閉雙擊鼠標右鍵單擊V3
- 14. 谷歌地圖API上的右鍵點擊事件與AngularJS
- 15. 谷歌地圖:將標記放在地圖的左上角
- 16. 谷歌地圖和畫圖工具中的雙擊功能
- 17. 谷歌地圖flex API:處理雙擊和單擊?
- 18. 谷歌地圖API v3'點擊'事件只能雙擊工作?
- 19. 在谷歌地圖上點擊'Google'
- 20. 在谷歌地圖上實施右鍵單擊事件標記
- 21. 擊中谷歌地圖
- 22. 谷歌地圖V2鍵
- 23. 谷歌地圖無效鍵
- 24. Android Studio谷歌地圖鍵
- 25. 在谷歌地圖上的箭頭鍵導航,無需點擊地圖
- 26. 如何檢測谷歌圖表上的雙擊事件(餅圖)
- 27. 如何禁用谷歌地圖拖動
- 28. 谷歌地圖 - 禁用搜索框
- 29. 在谷歌地圖中禁用InfoWindow
- 30. 禁用谷歌地圖選擇
我的幾個問題在這裏回答 - 愛那:) – 2018-03-09 22:18:51