Abi*_*aha 6 javascript google-maps google-maps-api-3 ecmascript-6 microsoft-edge
我一直在收到这个错误
无效的论点
来自Edge浏览器中的Google map v3.即使在收到错误后,其他所有工作都正常.只有当我尝试将光标移出地图到右侧(通过浏览器滚动)时才会发生这种奇怪的行为.它只发生在Edge.
我已经创建了一个JSFiddle,它像谷歌提到的那样处于原始状态.但在这种情况下我也得到同样的错误.我已经向谷歌地图支持论坛报告了这个错误,同时试图找到我所知道的最大社区的解决方案.提前致谢.您可以查看以下代码
function initMap() {
var uluru = {lat: -25.344, lng: 131.036};
var map = new google.maps.Map(
document.getElementById('map'), {zoom: 4, center: uluru});
var marker = new google.maps.Marker({position: uluru, map: map});
}
Run Code Online (Sandbox Code Playgroud)
我能够重现这个问题,这是我发现的:
边缘上的common.js文件中的以下代码中出现此问题:
if ("undefined" != typeof a.compareDocumentPosition)
return a == b || !!(a.compareDocumentPosition(b) & 16);
Run Code Online (Sandbox Code Playgroud)
特别是compareDocumentPosition函数调用,因为它不喜欢参数b.实际功能块:
function (a, b) {
if (!a || !b)
return !1;
if (a.contains && 1 == b.nodeType)
return a == b || a.contains(b);
if ("undefined" != typeof a.compareDocumentPosition)
return a == b || !!(a.compareDocumentPosition(b) & 16);
for (; b && a != b;)
b = b.parentNode;
return b == a;
};
Run Code Online (Sandbox Code Playgroud)
只要mouseout事件发生在地图容器上,并且参数a是地图容器元素而b是滚动条对象,就会调用此块.当您将鼠标移出地图并移动到浏览器窗口的滚动条上时,所有其他浏览器调用相同的方法nodeType,滚动条对象为1,然后执行return a == b || a.contains(b);代码块.
但是,如果nodeType滚动条对象的边缘是undefined,它执行return a == b || !!(a.compareDocumentPosition(b) & 16);代码块并将滚动条对象传递给compareDocumentPosition函数调用,然后记录无效参数.在控制台上.
你可以看到我在这里提交的错误报告.
| 归档时间: |
|
| 查看次数: |
596 次 |
| 最近记录: |