Axure嵌入GIS地图

Axure做原型时也会常引用Gis地图。常规的方法是通过内联框架元件调用公网地图,但是这种方式样式下的地图内容都无法修改。本文以高德为例介绍如何通过javascript注入实现Axure自定义Gis地图的嵌入。

1、地图构建

打开高德地图API官网,由于通过js注入的方式进行嵌入。所以选取了异常加载地图方式,这样加载可以更加顺畅。示例地址https://lbs.amap.com/demo/javascript-api/example/map-lifecycle/asynchronous-loading-map ,可以在此基础上加上想要的功能。

Axure嵌入GIS地图

2、Axure 引用

2.1 创建容器

在axure界面里拖入矩形,作为地图容器,并命名为“container” (可以自己定义名称,但要与javascript代码【data-label】里的值保持一致)。

Axure嵌入GIS地图

2.2 javascript注入

2.2.1 增加交互事件
增加交互事件,【载入时】打开链接,【超链接到】写入javascript 的代码实现Gis的引用,如下图

Axure嵌入GIS地图


2.2.2 javascrit代码写入
a 准备代码
编辑框加入

javascript: var dom =$('[data-label=container]').attr('id'); 

b 地图代码
然后复制高德地图的代码复制进去,修改高德key值,修改方式可以参考https://lbs.amap.com/api/javascript-api/guide/abc/prepare

Axure嵌入GIS地图
javascript:
var dom =$('[data-label=container]').attr('id');
/*高德地图的代码*/
    function onApiLoaded(){
        var map = new AMap.Map(dom , {
            center: [117.000923, 36.675807],
            zoom: 6
        });
        map.plugin(["AMap.ToolBar"], function() {
            map.addControl(new AMap.ToolBar());
        });
    }
     var url = 'https://webapi.amap.com/maps?v=1.4.15&key=你的key&callback=onApiLoaded';
    var jsapi = document.createElement('script');
    jsapi.charset = 'utf-8';
    jsapi.src = url;
    document.head.appendChild(jsapi);


c 简化代码

javascript:
var dom ==axure("@container").().attr('id');
/*高德地图的代码*/
    function onApiLoaded(){
        var map = new AMap.Map(dom , {
            center: [117.000923, 36.675807],
            zoom: 6
        });
        map.plugin(["AMap.ToolBar"], function() {
            map.addControl(new AMap.ToolBar());
        });
    }
$axure.utils.loadJS('https://webapi.amap.com/maps?v=1.4.15&key=你的key&callback=onApiLoaded');


通过Axure内置的加载JS函数,减少动态加载JS部分的代码。$axure.utils.loadJS(url)函数说明参考Axure 加载js、css文件​www.sima.link/axure-api-load-js-css/


2.3 效果

点击预览调用chrome浏览器查看效果

Axure嵌入GIS地图

转载知乎:https://zhuanlan.zhihu.com/p/543176914

声明:本站部分文章或资源,整理于网络或由网友提供,主要用于知识性分享与学习用途。若相关内容侵犯了原著者的合法权益,请联系处理。
Axure

Axure实例:login登录页面用户名密码校验

2022-11-29 12:46:59

Axure

解决MAC电脑无法安装Axure的问题

2022-12-1 12:09:41

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧