• 删除百度地图百度表示和比例尺


    如图,在调用百度API的时候,经常遇到有百度标示不知道怎么去除的问题,这里,我介绍一个简单粗暴的方式,好处坏处也就是多了个0.0几秒的生成标签的时间,所以,不影响性能:

    直接在API生成代码initMap后面加段下面这个代码就 行了:

       //删除百度图标
        function delMapBaiDuLabel(){
          //anchorBL
          setTimeout(function(){
            function removeElement(_element){
              var _parentElement = _element.parentNode;
              if(_parentElement){
                _parentElement.removeChild(_element);
              }
            }
            var anchorBL = document.getElementsByClassName('anchorBL');
            console.info(anchorBL.length)
            for(var i=0;i<anchorBL.length;i++){
               console.info(anchorBL[i]);
               removeElement(anchorBL[i]);
            }
          },1000)
        }
       //删除比例尺
        function delScale(){
          setTimeout(function(){
            function removeElement(_element){
              var _parentElement = _element.parentNode;
              if(_parentElement){
                _parentElement.removeChild(_element);
              }
            }
            var anchorBL = document.getElementsByClassName('BMap_scaleCtrl');
            console.info(anchorBL.length)
            for(var i=0;i<anchorBL.length;i++){
               console.info(anchorBL[i]);
               removeElement(anchorBL[i]);
            }
          },1000);
        }
        //方法调用
        // delMapBaiDuLabel();
        // delScale();
    

    当然,上面这个代码加上去还是会有logo一闪的情况,所以,可以先设置anchorBL为display:none,这样一开始就不会显示出来,等加载完成了在控制他显示出来。

    既然节点都可以获取到了,那还有什么做不了得呢,同样思想,想换内容不是很轻松吗??

    下面是衍生:

       //change the logo 
        function delMapBaiDuLabel(){
          //anchorBL
          setTimeout(function(){
            function removeElement(_element){
              var _parentElement = _element.parentNode;
              if(_parentElement){
                _parentElement.removeChild(_element);
              }
            }
            var anchorBL = document.getElementsByClassName('anchorBL');
            var chs = anchorBL[0].childNodes;
            var imgs = chs[0].childNodes;
            console.info(anchorBL[0]);
            imgs[0].src = "http://og5r1iuwq.bkt.clouddn.com/lo.png";
            console.info(imgs[0])
            anchorBL[0].style.display = 'block';
            /**
             * styleArry [{key:'display',val:'none'},{key:'width',val:'156px'},{key:'height',val:'30px'}]
             */
            function css(domObj,styleArry){
              for(var i=0;i<styleArry.length;i++){
                 domObj.style[styleArry[i].key] = styleArry[i].val;
              }
            }
            css(imgs[0],[{key:'display',val:'block'},{key:'width',val:'156px'},{key:'height',val:'30px'}]);
            // anchorBL
            // for(var i=0;i<anchorBL.length;i++){
            //    console.info(anchorBL[i]);
            //    removeElement(anchorBL[i]);
            // }
          },1000)
        }
    

      

    钟声敲响了日落
  • 相关阅读:
    Linux(Centos7)下redis5安装、部署、开机自启
    请求*.html后缀无法返回json数据的问题
    Linux搭建图片服务器减轻传统服务器的压力(nginx+vsftpd)
    Centos7和Centos6防火墙开放端口配置方法(避坑教学)
    分享一个酷炫动态登录页面html
    分布式全文搜索解决方案
    PHP实现支付宝登录
    PHP发送短信
    PHP中发送qq邮件
    ES6新语法(二)
  • 原文地址:https://www.cnblogs.com/SATinnovation/p/6033200.html
Copyright © 2020-2023  润新知