You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Adobe Captivate SCORM在Moodle中JavaScript代码失效问题求助

解决Adobe Captivate SCORM项目在Moodle中勾选标记不显示的问题

核心问题排查与解决方案:

  • 元素定位与jQuery冲突问题
    Moodle的SCORM容器会将内容嵌套在iframe中,且可能存在jQuery版本冲突,导致选择器无法定位目标元素。建议改用原生JS操作DOM,同时增加错误日志便于排查:

    var currSlide = window.cpAPIInterface.getCurrentSlideIndex();
    var tickElement = document.getElementById("icon_tick_slide" + currSlide + "c");
    if (tickElement) {
      tickElement.style.visibility = "visible";
      // 若原本用display属性隐藏,替换为:tickElement.style.display = "inline-block";
    } else {
      console.error("未找到幻灯片" + currSlide + "对应的勾选元素");
    }
    

    先通过Moodle开发者工具(F12)确认勾选元素的实际ID是否与代码中的icon_tick_slideXc一致,避免Captivate导出时自动修改ID。

  • iframe上下文隔离处理
    若Captivate内容在子iframe中,直接调用window会指向父页面,需切换到iframe内部上下文:

    // 根据实际src特征定位Captivate所在iframe
    var cpIframe = document.querySelector('iframe[src*="html5"]');
    if (cpIframe) {
      var cpWindow = cpIframe.contentWindow;
      var currSlide = cpWindow.cpAPIInterface.getCurrentSlideIndex();
      var tickElement = cpWindow.document.getElementById("icon_tick_slide" + currSlide + "c");
      if (tickElement) tickElement.style.visibility = "visible";
    }
    
  • Captivate API初始化时机校正
    Moodle加载SCORM的速度较慢,需确保API完全初始化后再执行代码:

    function showTickMark() {
      var currSlide = window.cpAPIInterface.getCurrentSlideIndex();
      var tickElement = document.getElementById("icon_tick_slide" + currSlide + "c");
      if (tickElement) tickElement.style.visibility = "visible";
    }
    
    // 绑定下一页按钮事件(替换为你的按钮实际ID)
    function bindButtonEvent() {
      document.getElementById("next_button").addEventListener("click", showTickMark);
    }
    
    // 监听API就绪事件
    if (window.cpAPIInterface) {
      bindButtonEvent();
    } else {
      window.addEventListener("cpAPIInterfaceReady", bindButtonEvent);
    }
    
  • SCORM导出设置验证

    • 导出时务必勾选「允许JavaScript交互」选项,且SCORM版本(1.2/2004)与Moodle支持版本匹配。
    • 选择「仅HTML5」格式导出,彻底规避Flash兼容性问题(Moodle已停止支持Flash)。

内容的提问来源于stack exchange,提问作者Markol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 18:54:59