如題
參考https://blog.csdn.net/weixin_42519137/article/details/85159900
<div id="video" class="layui-form-mid layui-word-aux" > <video style="width: 100%;height: 150px;" controls> <source id="img7" src="" type="video/mp4" /> </video> </div>
$('#img7').attr('src',isDefine(result[0].vedio)?result[0].vedio:"");
答案如下:
通過 jQuery 確實是給 source 的 src 賦值成功,從調試來看,瀏覽器並沒有去發起請求去獲得相應的視頻,
而只是單純的將 a 標簽的 data-src 中的值賦值給 source 了。
因此,可以推斷出來的是,當 video 中存在 source 標簽的時候,瀏覽器渲染之后會自動去獲取地址,即便地址改變,
瀏覽器也不會再去獲取地址。但是通過動態的插入 source 標簽的方式,可以觸發瀏覽器進行重排,從而去獲取相應地址的文件進行播放。
如果直接把<source id="img7" src="" type="video/mp4" />標簽替換掉的話,第一次是可以播放,但再切換別的src還是會顯示第一個播放的視頻的src。
所以,正確方法是連同video標簽一起換了。