小程序入坑记录
一、Video
官方文档中没有说明有poster属性,试了貌似可以使用
1.动态切换播放源
wxml:
<video id="myVideo" src="{{defaultCourse.Course_LinkUrl}}" poster="{{courseDetail.Course_Detail.Course_Img}}" controls autoplay="true"></video>
章节列表:
bindtap="sectionOnclick"触发事件,绑定了当前所属章节的序号(为了动态更改css样式表)
class="{{currentIdx==cidx+'-'+sidx?'current-section':''}}",这个三元表达式,表示点击当前节的时候,把当前节点变绿(current-section,其实就是一个color:#008000;)
<view style="padding:5px;"> <!--章节--> <view wx:for="{{courseDetail.Course_Chapter}}" wx:for-index="cidx"> <view class="course-chapter">{{item.Chapter_Name}}</view> <view wx:for="{{item.Sections}}" wx:for-index="sidx" class="course-section"> <view style="display: flex;flex-direction: row;padding:0px;"> <view style="padding:0px;width:700rpx;" bindtap="sectionOnclick" data-sidx="{{sidx}}" data-cidx="{{cidx}}" data-course="{{item}}" class="{{currentIdx==cidx+'-'+sidx?'current-section':''}}"> >{{item.Section_Name}} </view> <view style="width:50rpx;padding:0px;">{{item.Course_Length}}</view> </view> </view> </view> </view>
js代码:
//点击章节
sectionOnclick:function(event){
var myvideo = wx.createVideoContext("myVideo");
console.log(myvideo);
this.setData({
currentIdx : event.target.dataset.cidx+'-'+event.target.dataset.sidx
});
this.setData({
defaultCourse:event.target.dataset.course
});
myvideo.play();
}
这里有个坑:设置完成后,切换章节无法自动播放,必须手动点一下播放按钮才可以。myvideo.play()无效。偶尔会有效果,可以听到声音,但画面不动。
把video设置为autoplay后也可以。不知道是不是哪里操作问题。。。。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述