zoukankan      html  css  js  c++  java
  • arcgis api for js共享干货系列之二自定义Navigation控件样式风格

    arcgis api for js默认的Navigation控件样式风格如下图:

    这样的风格不能说不好,各有各的爱好,审美观,这里也不是重点,这里的重点是如何自定义一套自己喜欢的样式风格呢;自己自定义一个NavigationControl控件类,最终实现的效果如下图:

    思路如下:其实就是在网上参照天地图或者谷歌地图的Navigation风格样式,下载它们的图片模版,然后自己创建div来实现图片的缩放平移、全图、左右上下平移等等地图导航功能;

    Navigation图片目录如下:

    调用函数: 

    复制代码
    //显示地图导航条  
    showSlider: function (fullExtent, config) {  
        config.targetId = this.mapDivId;  
        var toolBar = new DCIMapNavigationToolbar(config);  
        var _map = this.esriMap;  
        /* 地图上移 */  
        toolBar.onMoveUp = function () { _map.panUp(); };  
        /* 地图下移 */  
        toolBar.onMoveDown = function () { _map.panDown(); };  
        /* 地图左移 */  
        toolBar.onMoveLeft = function () { _map.panLeft(); };  
        /* 地图右移 */  
        toolBar.onMoveRight = function () { _map.panRight(); };  
        /* 地图全图 */  
        toolBar.onFullMap = function () { _map.setExtent(fullExtent); };  
        /* 地图放大 */  
        toolBar.onZoomIn = function () { _map.setLevel(toolBar.getValue()); };  
        /* 地图缩小 */  
        toolBar.onZoomOut = function () { _map.setLevel(toolBar.getValue()); };  
        /* 滑动条滑动结束 */  
        toolBar.onSliderEnd = function () { _map.setLevel(toolBar.getValue()); };  
        /* 地图级别标记-街道 */  
        toolBar.onMark_Street = function () { _map.setLevel(config.marksShow.streetLevel); };  
        /* 地图级别标记-城市 */  
        toolBar.onMark_City = function () { _map.setLevel(config.marksShow.cityLevel); };  
        /* 地图级别标记-省级 */  
        toolBar.onMark_Province = function () { _map.setLevel(config.marksShow.provinceLevel); };  
        /* 地图级别标记-国家 */  
        toolBar.onMark_Country = function () { _map.setLevel(config.marksShow.countryLevel); };  
        toolBar.create();  
        dojo.connect(_map, "onZoomEnd", zoomEnd);  
        function zoomEnd(extent, zoomFactor, anchor, level) {  
            toolBar.setValue(level);  
        }  
        return toolBar;  
    }, 
    复制代码

    参数 fullExtent, config分别代表地图的全图范围以及地图配置参数,DCIMapNavigationToolbar是自定义的Navigation控件类

    config具体值:

     

    具体的Navigation控件类下载:control.js
    样式css下载:mapcss

  • 相关阅读:
    react 起手式
    获取元素CSS值之getComputedStyle方法熟悉
    js设计模式
    es6笔记5^_^set、map、iterator
    Flux --> Redux --> Redux React 入门 基础实例使用
    http协议与内容压缩
    C程序中唯一序列号的生成
    动态设置布局LayoutInflater
    构造Scala开发环境并创建ApiDemos演示样例项目
    BZOJ 2525 Poi2011 Dynamite 二分答案+树形贪心
  • 原文地址:https://www.cnblogs.com/telwanggs/p/7122584.html
Copyright © 2011-2022 走看看