您的位置:首页 > Web前端 > HTML

百度地图Api进阶教程-默认控件和自定义控件2.html

2013-08-15 18:16 441 查看
转载:http://blog.csdn.net/sd0902/article/details/8471321

[html] view
plaincopy

<pre name="code" class="html"><!DOCTYPE html>  

<html>  

<head>  

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  

<title>百度地图</title>  

  

  

<script type="text/javascript">  

  

    function initialize() {  

        //---------------------------------------------基础示例---------------------------------------------  

        var map = new BMap.Map("allmap",{minZoom:12,maxZoom:20});            // 创建Map实例  

        //map.centerAndZoom(new BMap.Point(116.4035,39.915),15);  //初始化时,即可设置中心点和地图缩放级别。  

        map.centerAndZoom("成都",13);                     // 初始化地图,设置中心点坐标和地图级别。  

        map.enableScrollWheelZoom(true);//鼠标滑动轮子可以滚动  

      

        //---------------------------------------------默认控件示例---------------------------------------------  

        map.addControl(new BMap.NavigationControl());  //添加默认缩放平移控件  

          

        //---------------------------------------------版权控件---------------------------------------------  

        var cr = new BMap.CopyrightControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT});  

  

        //var bs = map.getBounds();  

        cr.addCopyright({id: 1, content: "<a href='#' style='font-size:20px;background:yellow'>我是自定义版权控件呀</a>"});  

        map.addControl(cr); //添加版权控件  

  

        //---------------------------------------------自定义控件---------------------------------------------  

        // 定义一个控件类,即function  

        function ZoomControl(){  

             // 默认停靠位置和偏移量  

            this.defaultAnchor = BMAP_ANCHOR_TOP_RIGHT;  

            this.defaultOffset = new BMap.Size(10, 10);  

        }  

  

        // 通过JavaScript的prototype属性继承于BMap.Control  

        ZoomControl.prototype = new BMap.Control();  

  

        // 自定义控件必须实现自己的initialize方法,并且将控件的DOM元素返回  

        // 在本方法中创建个div元素作为控件的容器,并将其添加到地图容器中  

        ZoomControl.prototype.initialize = function(map){  

            // 创建一个DOM元素  

            var div = document.createElement("div");  

            // 添加文字说明  

            //div.appendChild(document.createTextNode("放大2级"));  

             div.innerHTML="<img src=\"http://t2.baidu.com/it/u=351117335,2626617599&fm=0&gp=0.jpg\" />"  

            // 设置样式  

            div.style.cursor = "pointer";  

            div.style.border = "1px solid gray";  

            div.style.backgroundColor = "white";  

            // 绑定事件  

            div.onclick = function(e){  

                //点击一次放大两级  

                map.setZoom(map.getZoom() + 2);  

                alert(1);  

            }  

            // 添加DOM元素到地图中  

            map.getContainer().appendChild(div);  

            // 将DOM元素返回  

            return div;  

        }  

        // 创建控件  

        var myZoomCtrl = new ZoomControl();  

        // 添加到地图当中  

        map.addControl(myZoomCtrl);  

    }  

   

    function loadScript() {  

       var script = document.createElement("script");  

       script.src = "http://api.map.baidu.com/api?v=1.4&callback=initialize";  

       document.body.appendChild(script);  

    }  

   

    window.onload = loadScript;  

</script>  

  

  

</head>  

 <body>  

    <div style="float:left;width:100px;">1</div>  

    <div id="allmap" style="width: 800px; height: 500px"></div>  

</body>  

</html>  

  

<script type="text/javascript">  

    // 移动到某点 map.panTo(new BMap.Point(116.409, 39.918));    

     // map.setZoom(14);   //放到到14级  

</script></pre><br>  

<pre></pre>  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: