支持图片和视频的轮播图

场景描述

图片和视频存在数据集中,轮播图显示数据集中的图片和视频。轮播图自动切换时,不播放视频。视频播放时,轮播图暂停自动切换

实现思路

使用走马灯组件、图片组件、视频组件和动态列表组件实现。走马灯组件可设置为自动切换,当鼠标进入后暂停自动切换,鼠标离开后恢复自动切换

实现步骤

1 准备数据

将图片和视频存储于数据集中,并标识出是图片还是视频,用于控制,在轮播图中显示图片组件还是视频组件

2 添加走马灯组件、图片组件、视频组件

走马灯组件支持添加静态的多个面板,也支持通过动态列表,根据数据动态生成面板。

  • 本例使用动态列表根据数据动态生成面板
  • 在面板中添加图片组件,设置动态隐藏,是图片则显示否则隐藏
  • 在面板中添加区块组件,在区块组件中添加视频组件,设置区块组件的动态隐藏,是视频则显示否则隐藏

自动切换、悬停暂停和指示器悬停暂停都设置为true表示,默认轮播图自动切换,当鼠标进入轮播图范围则停止自动切换,离开后恢复自动切换

3 播放视频暂停走马灯的自动切换

在视频组件的播放事件中,调用走马灯组件的pause方法,暂停自动切换,示例代码如下

onVideo2Play(event){
    this.comp("carousel0").pause();
}

4 视频暂停后恢复走马灯的自动切换

在视频组件的暂停事件中,调用走马灯组件的getAutoplay方法获取自动切换属性的值,如果自动切换为true,则调用走马灯组件的play方法,恢复自动切换,示例代码如下

onVideo2Pause(event){
    let lbt = this.comp("carousel0");
    if(lbt.getAutoplay()){
        lbt.play();
    }
}

results matching ""

    No results matching ""

    results matching ""

      No results matching ""