Google Map API点击事件在Firefox中不起作用

时间:2014-04-10 09:24:01

标签: asp.net firefox google-maps-api-3

我从here下载了Google地图API控件示例项目,并在我的项目中使用了此控件和代码功能,但是click事件引发了错误,并且无法在Mozilla Firefox中运行。该错误的文本是

TypeError: access to strict mode caller function is censored"

我在Firebug控制台面板中看到的。 页面和单击事件在IE浏览器中正常工作。 请问有人帮忙解决这个问题吗?

显示错误的页面位于:http://shabdar.somee.com/MapClickEvent.aspx

1 个答案:

答案 0 :(得分:0)

错误消息

TypeError: access to strict mode caller function is censored

报告

while (caller.arguments.callee.caller && --recursionLimit) {

用于使用use strict;模式的附带脚本之一。

来自MDN Strict mode

第三,不再支持arguments.callee。在正常的代码中,arguments.callee指的是封闭函数。这个用例很弱:只需命名封闭函数!而且,arguments.callee实际上阻碍了内联函数之类的优化,因为如果访问arguments.callee,必须能够提供对非内联函数的引用。用于严格模式函数的arguments.callee是一个不可删除的属性,在设置或检索时抛出:...

我不知道Chrome是否对检查不太严格,或者根本没有调用脚本。

更新:修复可能是将地图点击事件监听器更改为:

    google.maps.event.addListener(map, 'click', function(event) {
        document.getElementById('lblPushpin1').innerHTML = event.latLng.lat() + ':' + event.latLng.lng();
    });