启用/禁用在谷歌地图上拖动标记

the*_*k24 1 javascript google-maps google-maps-api-3

我正在尝试使用“启用”按钮启用拖动,并在我的谷歌地图代码中使用“禁用”按钮禁用拖动。创建每个标记后,我尝试使用此代码:

function Disable() {
      marker.disableDragging();}
 function Enable() {
      marker.enableDragging();
    }
Run Code Online (Sandbox Code Playgroud)

但它不起作用,我不知道为什么。我认为该代码是正确的,但有什么问题呢?

sca*_*dge 7

你应该使用

用于在地图上禁用可拖动

map.setOptions({draggable: true});
Run Code Online (Sandbox Code Playgroud)

或者

map.setOptions({draggable: false});
Run Code Online (Sandbox Code Playgroud)

对于禁用/启用单个标记,您应该使用

marker.setDraggable(false);
Run Code Online (Sandbox Code Playgroud)

或者

marker.setDraggable(true);
Run Code Online (Sandbox Code Playgroud)

如果您想对所有标记执行此操作,您应该遍历整个标记集合