【问题标题】:Disable Google Maps user agent check禁用谷歌地图用户代理检查
【发布时间】:2017-08-10 17:27:46
【问题描述】:

从 3.29 版开始,Google Maps JavaScript API 检查浏览器的navigator.userAgent 并显示兼容性警告。

我正在嵌入式 Web 浏览器控件中显示地图。默认情况下,控件在 IE 7 兼容模式下运行——我可以使用 X-UA-Compatible 标记覆盖它。页面如下所示:

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <style>
       #map {
        height: 400px;
        width: 100%;
       }
    </style>
  </head>
  <body>
    <div id="map"></div>
    <script>
      function initMap() {
        var map = new google.maps.Map(document.getElementById('map'), {});
      }
    </script>

    <script async defer
    src="https://maps.googleapis.com/maps/api/js?v=3.29&key=~APIKEY~&callback=initMap">
    </script>
  </body>
</html>

使用顶部的元标记,页面以 IE 11 模式呈现,但仍使用此用户代理:

用户代理:Mozilla/4.0(兼容;MSIE 7.0;Windows NT 10.0;WOW64;Trident/7.0;.NET4.0C;.NET4.0E;.NET CLR 2.0.50727;.NET CLR 3.0.30729; .NET CLR 3.5.30729;InfoPath.3)

我可以覆盖发送的 HTTP 用户代理,但我不能更改 JavaScript navigator.userAgent 属性。有没有办法在不完全禁用警告的情况下禁用 Google 的检查?

【问题讨论】:

    标签: javascript google-maps-api-3 twebbrowser


    【解决方案1】:

    对于有类似问题的任何人,您可以像这样隐藏页面上的所有警告:

    <style type="text/css">
      .infomsg { display: none; }
    </style>
    

    但我想找到更好的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-02
      • 1970-01-01
      • 1970-01-01
      • 2012-06-14
      • 1970-01-01
      • 2017-12-25
      • 2011-05-29
      相关资源
      最近更新 更多