-1

我正在尝试控制使用 Google Maps API 创建的自定义叠加层的不透明度。这里没有什么新东西,所以我搜索了 Stack Overflow 并从这个问题中找到了本教程

我不是 JavaScript 专家,所以我遇到了一些麻烦。我查看了代码,并尝试使用我已经拥有的内容对其进行调整,但到目前为止还没有运气。如果我在 Firebug 中检查错误消息,我会收到以下消息:Uncaught TypeError: Cannot read property 'length' of undefined

如果您在此处查看我的 JSFiddle,您可以看到第 8 行的错误与var tileCount. 我不知道如何调整这部分代码以使其与我所拥有的一起工作,这是一个单一的图像,而不是教程中的平铺。

滑块...滑动,但不改变不透明度。最初也缺少旋钮/手柄。

感谢您的帮助和指导。

PS 是的,我知道自定义叠加层与地图背景并不完全一致,但这只是一个实验/学习过程。

PPS 我重新发布了这个问题,因为我意识到我插入了错误的链接。

4

1 回答 1

1

您可以尝试使用 jquery 解决此问题。

这是您代码中的快速修复

只是几个新字符串:

TestOverlay.prototype.setOpacity = function (op) {
   //Set opacity to all layer's divs (range from 0.00 to 1.00)
  $("div.myLayer").css("opacity", op/100);
}

TestOverlay.prototype.onAdd = function () {
  ...
  //Set class name for opacity
  div.className = "myLayer";

  this.div_ = div;

  var panes = this.getPanes();
  panes.overlayLayer.appendChild(div);
};

不透明度范围在 0 和 1 之间。示例中的滑块返回 0 - 20。需要稍微调整一下。

于 2013-10-26T02:56:16.930 回答