我需要在 Moodle 4.0 中实现对 Flexsections 课程格式的移动应用程序支持。默认情况下,子部分在 Moodle 应用程序中显示为另一个部分,就像任何主题格式一样。我需要使用 Mustasche 模板和 javascript 在 Ionic 5 中实现手风琴,其中子部分折叠在移动应用程序的主要部分中。
因为这是 Ionic 5,所以我没有 ion-accordion 组件。所以我在互联网上搜索了如何在 HTML/CSS/JS 以及 Ionic 5 中实现手风琴,并找到了这个教程:
但是由于我们只能在Moodle插件的移动支持文件中编写纯js,所以我不知道如何实现Accordion。
应用程序中有几个页面使用手风琴,例如消息组。您可以看到这是如何完成的,以获得如何在插件中执行此操作的灵感(特别注意
aria-*
属性,例如 aria-expanded
以使它们易于访问)。
我说“为了灵感”是因为正如你提到的,你不能在插件中编写新组件。但您应该能够在模板中使用
CONTENT_OTHERDATA
等内容,并在 JavaScript 中切换它。您可以在文档中了解更多信息:使用otherdata