ReferenceError:未定义google - Mozilla Firefox中的Google Apps脚本错误

时间:2014-12-29 06:42:45

标签: javascript firefox google-apps-script google-sites

我正在使用Google Apps脚本“Enum Sandbox Iframe模式”创建Google网站。

Google Developer Docs,它说,要调用自定义函数,我们需要使用google.script.run

样品:

Code.gs

function doGet() {
  return HtmlService.createHtmlOutputFromFile('index')
      .setSandboxMode(HtmlService.SandboxMode.IFRAME);
}

function doSomething() {
  Logger.log('I was called!');
}

的index.html

<script>
  google.script.run.doSomething();
</script>

当我使用谷歌浏览器运行时,它的工作完美。但它在Mozilla Firefox中引发了错误。 ReferenceError: google is not defined

有谁知道背后的原因?任何帮助将不胜感激。

更新

提交了Google代码中的错误:https://code.google.com/p/google-apps-script-issues/issues/detail?id=4652&thanks=4652&ts=1419836713&

1 个答案:

答案 0 :(得分:3)

所有浏览器都不支持IFRAME模式

  

此模式比其他沙盒模式施加更少的限制并且运行速度最快,但在某些旧版浏览器中根本不起作用,包括Internet Explorer 9

https://developers.google.com/apps-script/reference/html/sandbox-mode

您现在必须切换到EMULATED或NATIVE。 IFRAME模式是新的,也许随着时间的推移会有更多的支持。

function doGet() {
  return HtmlService.createHtmlOutputFromFile('index')
      .setSandboxMode(HtmlService.SandboxMode.NATIVE);
}