use*_*594 5 javascript adobe scorm
当您单击发布到SCORM的Captivate课程中的退出按钮时,应用程序将不会退出.我尝试了所有发布的方法.他们没有工作.Captivate不会在版本7中处理javascript.经过多次尝试,我终于找到了一个可以使用的钩子.问题主要是由Adobe永远不会解雇LMSFinish引起的.(奇怪,因为有两个要求SCORM兼容训练,1.消防LMSInitialize和2.消防LMSFinish.)一旦告诉LMS你完成了,LMS可以清理窗口.Web培训模块无法使用window.close关闭窗口.所以解决方案.
查找Utilities.js它位于$ CaptivateInstallFolder/Templates/Publish/LMS/Standard/SCORM/default/js文件夹中.
找到以下......
function DoCPExit()
{
if(window != window.parent && window.parent && window.parent.hasOwnProperty("DoCPExit"))
{
window.parent.DoCPExit();
}
else
{
window.close();
}
}
Run Code Online (Sandbox Code Playgroud)
并添加以下内容......
function DoCPExit()
{
if(SCORM2004_objAPI){SCORM2004_CallTerminate();}
if(SCORM_objAPI){SCORM_CallLMSFinish();}
/* The code below will only work if there is a parent. No parent. No close.*/
if(window != window.parent && window.parent && window.parent.hasOwnProperty("DoCPExit"))
{
window.parent.DoCPExit();
}
else
{
window.close();
}
}
Run Code Online (Sandbox Code Playgroud)
我回答了自己的问题,但我认为有人可能会从我的痛苦中受益.LMS可以关闭窗口,因为LMS打开它.
我希望这可以帮助别人.