以下是工作代码,它没有抛出任何错误,但我想使用jQuery从播放SCORM包的播放器向LMS发送数据。
代码 -
<html>
<head>
<title>SCORM Player - <?php echo $_GET['name'] ?></title>
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
$(document).ready(function(){
})
</script>
</head>
<frameset frameborder="0" framespacing="0" border="0" rows="0,*" cols="*">
<frame src="SCORM_2004_APIWrapper.js" name="API_1484_11" noresize>
<frame src="course/ThomasJefferson_sco2004/index.html" name="course" id="couse">
</frameset>
</html>
在ready()
之间我尝试了这些代码,但无法破解:(
$(document).ready(function(){
var stat = API_1484_11.GetValue("cmi.location");
// tried with objAPI as show here http://scorm.com/scorm-explained/technical-scorm/scorm-2004-overview-for-developers/
console.log(stat);
})
我的文件夹结构 -
-index.php
-player.php
-course/SCORM-course (directory)
-wrap.js
-SCORM_2004_APIWrapper.js
所有代码 -
我的index.php代码 - http://pastebin.com/e8fcvxep
我的Player.php代码 - http://pastebin.com/R0zRaVXJ
我的wrap.js代码 - http://pastebin.com/Lte4eTKu
我的SCORM_2004_APIWrapper.js代码 - http://pastebin.com/kdQ0JR04
让我知道如何处理从玩家到LMS的数据传输。
答案 0 :(得分:2)
您引用的SCORM_2004_APIWrapper.js实际上是内容或SCO找到LMS提供的SCORM 2004 Runtime。这称为“API_1484_11”。 API Wrapper本身在文档对象模型(DOM)中搜索API_1484_11。 SCO通常加载到IFRAME,弹出窗口或新的Windows / Tabs中。因此,他们在父窗口中搜索此API。请记住,高级分布式学习中的SCORM 2004运行环境PDF将进入这些协议和“规则”。我自己的项目中的一个例子是重量轻“Local_API_1484_11.js”。我将其设置为在SCO的本地测试中模仿LMS,因此您没有进行尽可能多的往返测试。您可以将其用作实际的基线,但请记住,有许多规则都基于白皮书,这远远不是所有的错误代码支持。
我不知道有谁发布了免费版本,因为它的字符串附加到读取SCORM CAM包(imsmanifest.xml)的服务器实现。传递信息,如时间限制,启动参数,完成阈值等...您通常管理所有这些参数,作业,学生档案,然后关注报告,论坛等......
我在Gitub上有关于Github项目中SCO / LMS关系的更多信息。 http://cybercussion.github.io/SCOBot/
如果您在非盈利组织工作,我有一个更加强大的LMS Runtime项目测试版。请给我发消息。