博主信息
博文 176
粉丝 1
评论 0
访问量 448725
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
apicloud地图
dxp2tq的博客
原创
1059人浏览过

apicloudmap.html

****************************************************************************************

<!DOCTYPE HTML>

<html>

<head>

    <meta charset="utf-8">

    <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>

    <title>APP</title>

    <link rel="stylesheet" type="text/css" href="../css/api.css" />

    <style>

    </style>

</head>

<body>


</body>

<script type="text/javascript" src="../script/api.js"></script>

<script type="text/javascript">

    var bMap;


    function openToilet(){

        // setTimeout(function(){

            api.openWin({

                name: 'win_toilet',

                url: './win_toilet.html',

                opaque: true,

                animation: {

                    type: 'fade'

                }

            });

        // },500);

    }

    

    //1:坐便式,2:蹲坑式

    var toilet1 = [], toilet2 = [];

    //id存起来

    var annoId1 = [], annoId2 = [], lastId = null;

    

    function addAnnotation(annoArr, type){


        for(var i=0, len=annoArr.length; i<len; i++){

            var curAnno = annoArr[i];


            if(curAnno.title.indexOf('公共厕所') > -1 || curAnno.title.indexOf('公厕') > -1){

                toilet2.push(curAnno);

                annoId2.push(curAnno.id);

            }else{

                toilet1.push(curAnno);

                annoId1.push(curAnno.id);

            }

        }


        updateAnnotation(type);


    }

    //更新标注

    function updateAnnotation(type){

        if (lastId != null) {

            bMap.removeAnnotations({

                idArray: lastId

            });

        }


        if(type == '1'){

            bMap.addAnnotations({

                annoArray: toilet1,

                pinImg: 'widget://image/toilet1.png'

            },function(ret,err){

                if(ret){

                    // alert("addAnnotations OK " + JSON.stringify(ret));

                    openToilet();

                }

            });


            lastId = annoId1;

        }else if(type == '2'){

            bMap.addAnnotations({

                annoArray: toilet2,

                pinImg: 'widget://image/toilet2.png'

            },function(ret,err){

                if(ret){

                    // alert("addAnnotations OK " + JSON.stringify(ret));

                    openToilet();

                }

            });


            lastId = annoId2;

        }

    }


    function searchNearBy(lon, lat, type){

        //找厕所

        bMap.searchNearBy({

            key:'厕所',

            lon: lon,

            lat: lat,

            radius: 1000

        },function(ret,err){

            if (ret.status){

                var resArr = ret.resultArray;

                var annoArr = [];

                for(var i=0; i<resArr.length; i++){

                    var item = resArr[i];

                    annoArr.push({

                        id: i,

                        lon: item.lon,

                        lat: item.lat,

                        title: item.name,

                        subTitle: item.add,

                        // showBubble:false

                    });

                }


                addAnnotation(annoArr, type);


            } else{

                api.alert({title:'厕所去哪了', msg:err.msg});

            }

        });

    }


    function init(type){

        bMap = api.require('baiduMap');


        //打开地图

        bMap.open({

            x: 0,

            y: api.pageParam.headerH,

            w: api.frameWidth,

            h: api.frameHeight

        },function(ret,err){

            if(ret){

                bMap.showUserLocation({

                    isShow:true,

                    trackingMode:'none'

                });


                //定位

                bMap.startLocation({

                    accuracy: '100m',

                    filter:1,

                    autoStop: true

                },function(ret, err){

                    if(ret){

                        // alert("startLocation OK " + JSON.stringify(ret));

                        var lat = ret.lat;

                        var lon = ret.lon;

                        var t = ret.timestamp;


                        setTimeout(function(){

                            bMap.setZoomLevel({

                                level: 16

                            });

                        },300);


                        //定位中心

                        bMap.setCenter({

                            lon: lon,

                            lat: lat

                        });


                        searchNearBy(lon, lat, type);

                    }else{

                        alert("startLocation error " + JSON.stringify(err));

                    }

                    

                });


            }else{

                alert("open error " + JSON.stringify(err));

            }

        });

    }


    apiready = function(){

        init(2);

    };

</script>

</html>


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学