• 项目中使用百度地图遇见的问题


    2016-5-30

    我想做出的效果是,当我鼠标移到marker上去的时候,显示重要信息,当我点击marker的时候,显示全部信息。

    结果当我鼠标移上去的时候,是显示了重要信息,但是下面的页面完全不能点击的。

    错误图:

    错误代码:

     $(function() {    
                    
                     $.ajax({
                            method: 'get',
                            url: '/yxt-admin/admin/hospital',
                            success: function(data) {
                                
                                var rows = data.data.rows,rowslen = rows.length;
                                 for(var i=0;i<rowslen;i++){
                                     var point=new BMap.Point(rows[i].longitude,rows[i].latitude);
                                     var id=rows[i].id;
                                     var marker= addMarker(point);   
                                
                                     
                                     
                                     
                                    // 鼠标移入时
                                     marker.addEventListener("mouseover",(function(arg){
                                         
                                          return function(){
                                            $.get('/yxt-admin/admin/hospital/' + arg + '/detail',
                                                    function(res){
                                                  $('#partform').form('load',res.data);
                                                  $('#partDialog').dialog({
                                                        title: '部分信息 ',
                                                        340,
                                                        height: 230,
                                                        closed: false,
                                                        modal: true,  
                                                      
                                                  });
                                            }) ;
                                         } 
                                     })(id)); 
                                     
                                    
                                  
    
                                      //   js闭包
                                     marker.addEventListener("click",(function (arg) {
                                           
                                           $.ajax({
                                             url:'/yxt-admin/admin/address/156/name', 
                                                   method:'get',
                                                   success:function(back){
                                                    var r = back.data.rows;rowslen = r.length;
                                                    for(var i = 0; i < rowslen; i++){
                                                        $("#codeName").append("<option value="+r[i].name+">"+r[i].name+"</option>");
                                                    }
                                                   //  }
                                                     $("#codeName").combobox({}); 
                                                  // 地址选择
                                                      addressbox.ReSet();
                                                   }
                                           });
                                            return function () {
                                                     // 自己执行的代码
                                                        }
                                        })(id));
                        
                        } 
                                  var sContent=document.getElementById('dialog');    //全部信息框
                               var infoWindow = new BMap.InfoWindow(sContent);  // 创建信息窗口对象
                               
                                  var partContent=document.getElementById('partDialog');// 部分信息框
                               var partWindow = new BMap.InfoWindow(partContent);//  创建信息窗口对象 
                               
                            }
                     });
                     
                }); 
                     
                
                    

    解决方法:

                                    // 鼠标移入时 显示部分信息
                                     marker.addEventListener("mouseover",(function(arg){
                                          return function(){
                                              $('#partform').form('reset');
                                            $.get('/yxt-admin/admin/hospital/' + arg + '/detail',
                                                    function(res){
                                                  $('#partform').form('load',res.data);
                                                   var parpoint=new BMap.Point(res.data.longitude,res.data.latitude);
                                                  map.openInfoWindow(partWindow,parpoint);
                                            }) ;
                                            } 
                                     })(id)); 

    效果图片:

  • 相关阅读:
    [leetcode] First Missing Positive
    [leetcode] Can Place Flowers
    [leetcode] Maximum Product of Three Numbers
    [leetcode] Generate Parentheses
    蓝桥杯 PREV-7 连号区间数
    蓝桥杯 PREV-3 带分数(dfs)
    蓝桥杯 PREV-2 打印十字图
    团体程序设计天梯赛 L3-016 二叉搜索树的结构 (30分)
    团体程序设计天梯赛 L3-020 至多删三个字符 (30分)(DP)
    团体程序设计天梯赛 L3-011 直捣黄龙 (30分)
  • 原文地址:https://www.cnblogs.com/hellokitty1/p/5542049.html
Copyright © 2020-2023  润新知