编程语言
首页 > 编程语言> > IE抛出JavaScript错误:“ googleMapsQuery”属性的值为null或未定义,不是Function对象(在其他浏览器中有效)

IE抛出JavaScript错误:“ googleMapsQuery”属性的值为null或未定义,不是Function对象(在其他浏览器中有效)

作者:互联网

我在IE 9中遇到了JavaScript范围的真正问题.

这在我的文档正文中(是的,我知道脚本应该放在正确的HTML的头上,但是我从来没有让它破坏脚本).该脚本在正文中,因为我不想弄乱仅与该页面相关的脚本的共享标题页:

<script type="text/javascript">
function googleMapsQuery(accountNum) {
    // function code is here (omitted for brevity)
}
</script>

这是在主体内的表单块内的表块内的tbody块内的tr块内的td块内:

<button id="google-422111" onclick="googleMapsQuery(422111)" type="button">Google This!</button>

我什至将脚本块移到了表单上方,以防脚本函数声明的顺序相关(不是).

该脚本在FireFox和Chrome中可以完美运行,但是在IE 9(启用或不启用兼容性视图)中,出现此错误:

SCRIPT5007: The value of the property ‘googleMapsQuery’ is null or undefined, not a Function object

我研究了JavaScript作用域,但我无法弄清IE为什么认为“ googleMapsQuery”是一个属性以及它为什么未定义的任何原因.这是一个函数,我定义了它!

解决方法:

我遇到了类似的问题,即属性为null或未定义.

最终导致IE的文档模式默认为IE7标准.这是由于兼容性模式已自动设置为可用于所有Intranet站点(“工具”>“兼容性视图设置”>“在兼容性视图中显示Intranet站点).

标签:javascript,function,undefined,runtime-error,internet-explorer-9
来源: https://codeday.me/bug/20191010/1886852.html