起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3289|回复: 11

[处理中3] 高德地图开发

[复制链接]

61

主题

170

帖子

260

积分

中级会员

Rank: 3Rank: 3

积分
260
QQ
发表于 2016-12-6 09:16:47 | 显示全部楼层 |阅读模式
在用高德地图开发的时候,每次一进去就会有提示,但是退出后再次进来就不会有任何问题,直接用浏览器和手机真机测试都是一样的效果
1R71%I7)3E7A7_VK6SJ$)61.png
发表于 2016-12-6 10:21:55 | 显示全部楼层
是不是需要初始化环境??
环境还没初始化完就不能调用它提供的方法!
你看下它提供的案例代码,应该有写setInterval    判断是否存在对象这样的判断吧?
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

61

主题

170

帖子

260

积分

中级会员

Rank: 3Rank: 3

积分
260
QQ
 楼主| 发表于 2016-12-6 15:13:16 | 显示全部楼层
liangyongfei 发表于 2016-12-6 10:21
是不是需要初始化环境??
环境还没初始化完就不能调用它提供的方法!
你看下它提供的案例代码,应该有写se ...

并没有这个setInterval    ,这种情况在手机上发生的比较少,但是浏览器运行的话这个问题很常见,我的具体代码是下面的,和高德官方提供的几乎没有差别
define(function(require) {
        require("css!$UI/system/components/bootstrap/lib/css/bootstrap").load();
        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");
        var Model = function() {
                this.callParent();
        };
        Model.prototype.modelLoad = function(event) {
                this.loadGaodeMap();
        };
        Model.prototype.loadGaodeMap = function() {
                var id = this.getIDByXID("gaodeMap");
                require([ 'http://webapi.amap.com/maps?v=1.3&key=您申请的key值&plugin=AMap.AdvancedInfoWindow' ], function() {
var lnglats = [
        [116.368904, 39.923423],
        [116.382122, 39.921176],
        [116.387271, 39.922501],
        [116.398258, 39.914600]
    ];
var lnglat=[116.368904, 39.923423];
  var content='<div class="info-title">高德地图</div><div class="info-content">' +
            '<img src="http://webapi.amap.com/images/amap.jpg">' +
            '高德是中国领先的数字地图内容、导航和位置服务解决方案提供商。</div>';
    var  infowindow1 = new AMap.AdvancedInfoWindow({
        content: content,
        offset: new AMap.Pixel(0, -30)
    });
    var map = new AMap.Map(id, {
        resizeEnable: true,
        center: lnglats[3],
                zoom: 15
    });
    for (var i = 0; i < lnglats.length; i++) {
    var marker = new AMap.Marker({
        position: lnglats
    });
   marker.on('click', markerClick);
                  
   }
     function markerClick(e) {
          infowindow1.open(map,lnglat);
    }
   marker.setMap(map);
                });
        };
        return Model;
});
回复 支持 反对

使用道具 举报

发表于 2016-12-6 15:20:58 | 显示全部楼层
zhoupaopao 发表于 2016-12-6 15:13
并没有这个setInterval    ,这种情况在手机上发生的比较少,但是浏览器运行的话这个问题很常见,我的具 ...

那建议您自己实现的时候,使用setInterval   
判断
if(AMap.Map){
执行代码,并关闭setInterval   
}
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

61

主题

170

帖子

260

积分

中级会员

Rank: 3Rank: 3

积分
260
QQ
 楼主| 发表于 2016-12-6 15:26:43 | 显示全部楼层
liangyongfei 发表于 2016-12-6 15:20
那建议您自己实现的时候,使用setInterval   
判断
if(AMap.Map){

这个setInterval    应该怎么使用,之前没有用过
回复 支持 反对

使用道具 举报

发表于 2016-12-6 15:28:55 | 显示全部楼层
zhoupaopao 发表于 2016-12-6 15:26
这个setInterval    应该怎么使用,之前没有用过

上网搜下用法!js语法,用于定时循环执行一段代码
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

61

主题

170

帖子

260

积分

中级会员

Rank: 3Rank: 3

积分
260
QQ
 楼主| 发表于 2016-12-6 15:51:52 | 显示全部楼层
liangyongfei 发表于 2016-12-6 15:28
上网搜下用法!js语法,用于定时循环执行一段代码

使用了,但是我加在 require([ 'http://webapi.amap.com/maps?v=1.3&key=您申请的key值&plugin=AMap.AdvancedInfoWindow' ], function() {这行下面的,但是function应该放在哪里呢,放在里面和外面都找不到这个function,我用的方法是var int=self.setInterval("clock()",1000);
function clock(){
if(AMap.Map){....}
}
回复 支持 反对

使用道具 举报

发表于 2016-12-6 16:07:29 | 显示全部楼层
zhoupaopao 发表于 2016-12-6 15:51
使用了,但是我加在 require([ 'http://webapi.amap.com/maps?v=1.3&key=您申请的key值&plugin=AMap.Adva ...

function 里 就直接写self.setInterval("clock()",1000); 呗
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

61

主题

170

帖子

260

积分

中级会员

Rank: 3Rank: 3

积分
260
QQ
 楼主| 发表于 2016-12-6 16:21:56 | 显示全部楼层
liangyongfei 发表于 2016-12-6 16:07
function 里 就直接写self.setInterval("clock()",1000); 呗

没看懂,我现在是在var int=self.setInterval("clock()",1000);这个调用clock()的时候调不了下面那个function clock(),而在function里面我是用来写一些具体操作的
回复 支持 反对

使用道具 举报

发表于 2016-12-6 16:30:46 | 显示全部楼层
zhoupaopao 发表于 2016-12-6 16:21
没看懂,我现在是在var int=self.setInterval("clock()",1000);这个调用clock()的时候调不了下面那个func ...

定义成全局变量就可以调用!
这个是js语法问题,自己学习研究研究吧!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-15 20:32 , Processed in 0.135601 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表