【问题标题】:Convert VBScript to Javascript将 VBScript 转换为 Javascript
【发布时间】:2013-03-02 04:59:39
【问题描述】:

忙于调试一个奇怪的问题,该问题与某些 Flash 内容将用户的进度从 SCORM 模块传回 Moodle 的方式有关。

在 IE 6、7、8、9、Chrome 和 Firefox 上,一切正常。在 IE 10 上,来自 Flash 模块的进度跟踪未到达服务器。

在 SCORM 启动器中,使用以下(古老的)代码创建事件处理程序:

<SCRIPT LANGUAGE="VBScript">
on error resume next
sub preloader_FSCommand(ByVal command, ByVal args)
  call preloader_DoFSCommand(command, args)
end sub
</SCRIPT>

在 Chrome 上调试,我可以看到该函数按预期调用。

尝试在 IE 10 中调试失败,因为代码从未被调用。我如何将这段代码翻译成 Javascript?尝试删除 VBScript,因为它似乎是问题的一部分。我尝试了以下代码,但没有成功:

<script>
      function preloader_FSCommand (command, args) {
           preloader_DoFSCommand(command, args);
      }
</script>

preloader_DoFSCommand 在代码中的其他地方定义,在 Chrome/Firefox/etc 上调用得很好,但在 IE 10 上却不行。

更新:似乎部分问题与 IE 10 在标准模式下不再支持 FSCommand 有关。现在的问题是,什么是合适的解决方法,不需要更改 Flash/SCORM 内容?

【问题讨论】:

  • 尝试强制 IE10 进入 IE9 兼容模式,并在您的“”中使用以下内容:
  • 解决了 - 谢谢!随意移动它以回答,我会将其标记为已接受。

标签: javascript vbscript internet-explorer-10 moodle scorm


【解决方案1】:

实现与 Flash 相同通信的 Javascript 方法是使用以下内容:

<script type="text/javascript" event="FSCommand(command,args)" for="preloader">
    preloader_DoFSCommand(command,args);
</script>

【讨论】:

    【解决方案2】:

    尝试在&lt;head&gt; 中使用以下内容强制 IE10 进入 IE9 兼容模式:&lt;meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" /&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-09
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      • 1970-01-01
      • 2013-02-03
      • 2010-11-06
      • 1970-01-01
      相关资源
      最近更新 更多