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

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>10.1</title>
    <script type="text/javascript">
        function initialize() {
            var map = new BMap.Map("container", { minZoom: 12, maxZoom: 25 });
            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  
            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="container" style="width: 800px; height: 500px">
    </div>
    <div id="result">
    </div>
</body>
</html>

 

posted on 2014-11-21 18:15  AlexGeng  阅读(388)  评论(0编辑  收藏  举报

导航