internet-explorer - Google Maps Places AutoComplete 不能在 Windows Phone 上运行?

标签 internet-explorer google-places-api windows-phone-8.1

我正在使用 Google map 自动完成界面在用户输入时自动查找位置。它在我测试过的所有浏览器(Chrome、FireFox、iOS 和更新的 Android 设备)上运行良好,Windows Phone 除外。

在 Windows Phone 上,places_changed 事件似乎没有触发,文本框也没有像在其他浏览器上那样自动更新。

这是一个简化的场景,演示了表单上的单个文本框:

<div class="container" style="padding: 40px">
    <label>Enter a location</label>
    <input id="location" value="" class="form-control" />
</div>

<script type="text/javascript"
        src="http://maps.googleapis.com/maps/api/js?v=3.exp&sensor=true&libraries=places">
</script>
<script>
    var el = document.getElementById('location');
    var autocomplete = new google.maps.places.Autocomplete(el);

    google.maps.event.addListener(autocomplete, 'place_changed', function () {                
            var place = autocomplete.getPlace();
            if (place.geometry.location)
                // delay setting the value - otherwise maps uses default always
                setTimeout(function() { el.value = place.name; }, 200);
        });
</script>

您可以在以下位置试用: http://embed.plnkr.co/kAwU0Fl97nEQr5HhxOTH/preview

它在所有浏览器(包括据称使用与 Windows Phone 8 相同的渲染引擎的 IE 11)中都可以正常工作,但在 Windows Phone 上会弹出下拉框,但既不会触发文本框的自动更新,也不会触发显式的仅使用名称更新文本的事件代码。

有什么办法可以解决这个问题吗?

最佳答案

有人有这方面的更多信息吗?我遇到了同样的问题 - Google Autocomplete Places 文本框在所有桌面浏览器和几乎所有手机浏览器上都能正常工作,Windows Phone 除外 - 您无法在 Windows Phone 上选择列表中的条目。

我现在已经在 Windows Phone 7.5、Windows Phone 7.8 和 Windows Phone 8.0 上使用 Google Places 自动完成功能测试了一个网站

Windows Phone 7.5 根本不工作(甚至不显示页面),7.8 和 8.0 手机显示上述显示正确下拉列表的错误,但无法选择条目。

我还没有能够测试即将推出的 Windows Phone 8.1 更新(它作为开发人员预发布更新提供,但手机最终用户还需要一个月才能使用)。

我有点希望 Windows Phone 8.1 更新可以带来解决方案。在测试中,我注意到 Windows Phone 7.5/8 声明他们使用“Internet Explorer 9”(移动版),而 Windows Phone 8.0 使用“Internet Explorer 10”(移动版)。即将推出的 Windows Phone 8.1 更新据称使用“Internet Explorer 11”。

这个帖子已经有 2 个月了,还有一个旧帖子(8 个月)与 Google places autocomplete not working in Windows mobile IE Browser 相似

此问题也已在 Google 公告板上报告,地址为 https://code.google.com/p/gmaps-api-issues/issues/detail?id=6120

希望 Google 能解决这个问题,或者其他人有可能解决这个问题吗?

编辑:我联系了 Google 支持,他向我指出了官方支持的 Google Maps JavaScript API 支持的浏览器常见问题解答:

https://developers.google.com/maps/faq#browsersupport

Google 特别支持所有桌面浏览器以及 iOS 和 Android 上的移动浏览器。它们不支持在 Windows Phone/移动设备上使用 Javscript 客户端 API。

关于internet-explorer - Google Maps Places AutoComplete 不能在 Windows Phone 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21906965/

相关文章:

android - 使用 10.2.0 获取 google play 服务(Google Places API Android)异常

javascript - 在不同的浏览器中检测 localStorage v sessionStorage 对象

internet-explorer - 是什么触发了 Internet Explorer 中的信息栏?

css - 使用 IE-CSS3 htc 调整浏览器大小时的框定位样式

javascript - 将标记从国家名称放入国家

c# - 转换器无法将类型 'system.datetime' 的值转换为 Windows Phone 8.1 Datepicker 中的类型 'datetime'

CSS3 多列布局 IE 解决方法

ios - 为什么当尝试在 Google API 中使用 iOS 的 Place Autocomplete 时,只得到 5 个结果而不是更多?

c# - 读取来自 HttpClient.GetStringAsync 的响应

c# - 从 RichEditBox 中删除图像