0

自从升级到 OpenLayers 2.13,我试图将我的谷歌地图版权定位在页面的左下角,但它总是想去右下角。

我在加载时尝试了这个(没有用):

.gmnoprint{
left:'0px';
right:'';
}

我尝试修改 Openlayers.js 中我认为相关的行(没有用):

e = document.createElement("div");
e.id = this.map.id + "_GMap2Container";
e.style.position = "absolute";
e.style.width = "100%";
e.style.height = "100%";
d.appendChild(e);
try {
    a = new GMap2(e), b = e.lastChild, d.appendChild(b), b.style.zIndex =
        "1100", b.style.right = "",b.style.left = "0px", b.style.bottom = "", b.className = "olLayerGoogleCopyright", c = e.lastChild, d.appendChild(c), c.style.zIndex = "1100", c.style.right = "",c.style.left = "0px", c.style.bottom = "", c.className = "olLayerGooglePoweredBy gmnoprint"
} catch (f) {
    throw f;
}

我在使用 jQuery 加载后尝试了此操作(有效,但前提是您设置了一个不是最佳选择的超时,因为它在重新定位时会导致闪烁):

$('.gmnoprint').css({'left':'0px','right':''})

前两次尝试我做错了什么?

4

1 回答 1

1

第一个解决方案的问题是,这些元素的位置直接设置在 style 属性中。所以它会覆盖由类设置的位置。

我猜第二个不起作用,因为除了 openlayers.js 之外,还有一些 google javascript 在那里乱七八糟。但这只是一个猜测。

您可以将自己注册为图层的事件侦听器并将您的 css 设置在那里,但这不会解决您的闪烁问题。

是一种解决方案,可以满足我的需求。

于 2013-12-22T15:14:38.197 回答