openlayers模仿google地图--地图版权随鹰眼关闭打开而改变位置

额。。题目有点长。。。。。。
今天有个群友问我。想实现google地图地图版权随鹰眼关闭状态改变位置的功能。
就是这种
<ignore_js_op>1.png               

     打开鹰眼时  地图版权也随着鹰眼位置改变而改变        

<ignore_js_op>2.png              

主要是修改两个地方,这里改下源码,当然大家不想改源码采用打补丁的方式就可以了

1.修改OpenLayers.Control.Attribution 源码  或打补丁updateAttribution
在updateAttribution函数中this.div.innerHTML上面增加如下代码
           //增加 by飞龙在天
            this.div.style.bottom = "2px";
            this.div.style.right = "15px";
            this.div.id = "Attribution";
            this.div.unselectable = "on";
2修改OpenLayers.Control.OverviewMap  源码或打补丁maximizeControl和minimizeControll
maximizeControl函数中this.element.style.display = '';下面增加一行代码

document.getElementById("Attribution").style.right = "220px";


修改minimizeControll函数中this.element.style.display= 'none';下面增加一行代码
document.getElementById("Attribution").style.right = "40px";


3. 在layer中属性增加attribution 为显示内容就ok了


最后效果如下  Provided by OpenStreetMap就随 鹰眼关闭打开而改变位置了

<ignore_js_op>3.png 

<ignore_js_op>4.png 


当然实现方式 多种多样了。这只是最简单的一种。关于openlayers鹰眼的改造和美化 见

http://www.openlayers.cn/portal.php?mod=view&aid=35

原文地址:https://www.cnblogs.com/gisvip/p/3541144.html