我正在开发符合 SCORM 的 LMS,但在 Captivate 生成的内容方面存在一些问题。
基本上,行为是:如果您看到一个 SCO(迷人生成的内容),例如 15 张幻灯片和每张幻灯片中的 1 个问题,我的 lms 不会跟踪所有 15 个问题,只跟踪前 3 个或 4 个问题。如果您等待最后很长一段时间,或者如果你把内容放慢,它工作正常。
经过大量的google搜索,以及调试和跟踪,最终我发现了两个主要问题:
1) Captivate - SCORM API 通信是异步的(与 flash - javascript 通信相同)。所以,当用户快速看到内容时,函数调用会越来越多,最后,可能用户正在回答第 15 题,而内容正在发送第 4 题的信息。我无法更改 Flash 或 JS-Flash 界面,因为这是 Captivate 提供的。
有办法让这个同步??我的意思是,强制闪光灯等待某种方式?
2) 函数每次调用耗时较长,例如 setValue 第一次耗时 7 毫秒,最后一次调用耗时 200 毫秒。
为了理解这个问题,这里有一点背景知识: Captivate contents(所有内容,但更令人着迷)多次调用特定函数,SetValue 函数,SCORM API 函数之一。该函数有两个参数(fieldName, value),第一个是要设置的字段的名称,第二个是新值。在我的实现中,此函数首先使用正则表达式验证值,然后在对象中设置值。
好的,我可以添加更多信息,但我不知道真正重要的是什么....也许那个人问对了问题...帮助:)
谢谢