H5 通過jquery動態的設定video src的值無法播放視訊?
答案如下:<div id="video-box"> <video style="object-fit: fill;width: 200px;height: 50px;" controls> <source src=""> </video> </div> <a class="dj" href="javascript:;" data-src="http://www.w3school.com.cn/i/movie.mp4">點選</a> *{padding:0;margin:0;} #video-box{display:none;} $(".dj").on("click", function() { var src = $(this).data("src"); $("#video-box source").prop("src",src) $("#video-box").show(); });
通過 jQuery 確實是給 source 的 src 賦值成功,從除錯來看,瀏覽器並沒有去發起請求去獲得相應的視訊,
而只是單純的將 a 標籤的 data-src 中的值賦值給 source 了。
但是如果這麼做,瀏覽器就會去請求地址獲得視訊檔案:
因此,可以推斷出來的是,當 video 中存在 source 標籤的時候,瀏覽器渲染之後會自動去獲取地址,即便地址改變,$(".dj").on("click", function() { var src = $(this).data("src"), sourceDom = $("<source src=\""+ src +"\">"); $("#video-box video").append(sourceDom); $("#video-box").show(); // 自動播放 $("#video-box video")[0].play() });
瀏覽器也不會再去獲取地址。但是通過動態的插入 source 標籤的方式,可以觸發瀏覽器進行重排,從而去獲取相應地址的檔案進行播放。
******************************分割線*********2018年5月24日14:52:58*********************************
上面那個方法,經測試,只能上傳一次的時候是有效果的,如果要替換多次視訊地址,就會顯示第一次的視訊,還有有一點問題,
可以使用如下方式修改視訊的播放地址,參考連結:https://bbs.csdn.net/topics/392007814
<div class="thumbImage" id="video-box" style="display: none;">
<!-- <img src="/allone-openaccount/resources/images/videoopen.png" id="image_people"/> -->
<video id="videoid" width="280" height="188" controls="controls" autoplay="autoplay">
<!-- <source src="/i/movie.ogg" type="video/ogg" /> -->
<source id="video_path" src="" type="video/mp4" />
<!-- <source src="/i/movie.webm" type="video/webm" />
<object data="/i/movie.mp4" width="320" height="240"> -->
<embed width="320" height="240" src="/i/movie.swf" />
<!-- </object> -->
</video>
</div>
var videoSrc = data.videoUrl;//新的視訊播放地址
document.getElementById("videoid").src=videoSrc ;
document.getElementById("videoid").play();
相關推薦
H5 通過jquery動態的設定video src的值無法播放視訊?
通過jquery動態的設定video src的值無法播放視訊?參考連結:h5 動態更改連結<div id="video-box"> <video style="object-fit: fill;width: 200px;height: 50px;" con
通過jquery動態設定下拉框select的選中值option
雖然簡單,但是用得比較少,自己按照select的選中原理,直接擼出來,然後做出跟百度出來的結果對比了一下,發現百度出來的東西太繁瑣了,效果實現了,但是本著程式碼要簡潔的心,我還是用了自己的方法,記錄一下結構如下:<select> <option cla
如果通過jQuery 動態的設定 radio 的選項
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/jquery.min.js" type
react中使用antdesign中form元件,動態設定Input的值
問題: 在使用Antdesign的form元件時,通過initialValue來設定Input的值,在form未驗證之前,可以通過initialValue來對input賦值,但是form驗證之後,雖然state中存在值,但是不能在input中顯示,form也不能再次提交,程式碼如下所示:
Android 自定義橫向進度條(可動態設定最大值)
自定義橫向進度條 主佈局檔案中包 含 <LinearLayout android:id="@+id/linearlayout" android:layout_width="match_parent" androi
通過attr 動態設定CheckBox的checked屬性,會出現第二次設定cheked屬性不起作用的情況
出現該問題時就要了解一下jquery利用attr、prop方法的區別在jquery中應該使用prop方法來獲取和設定checked屬性,不應該使用attr,需要的朋友可以參考下。1、prop方法獲取、設定checked屬性<input type="checkbox" na
radio通過Jq動態設定checked屬性無效,radio未選中
在做網站後臺應用程式的時候,遇到這麼一個問題,通過Jq動態設定radio的checked屬性,居然無效,各種糾結,各種納悶,於是乎各種百度,各種問問提問,最後在瀏覽其他帖子的時候,終於被我發現解決問題的辦法拉,那個心情賊拉的好呀 在我搜索的過程的過程的,發現網上大多
通過attr(,)動態設定CheckBox的checked屬性,會出現第二次設定cheked屬性不起作用的情況
出現該問題時就要了解一下jquery利用attr、prop方法的區別 在jquery中應該使用prop方法來獲取和設定checked屬性,不應該使用attr,需要的朋友可以參考下。 1、prop方法獲取、設定checked屬性 <input type="che
通過javascript動態改變按鈕的值
實現功能:點選按鈕時讓按鈕的值在兩種狀態之間切換<input name="sh1" type="button" id="sh1" value="中 止 發 布 信 息" onclick="chkinfo(this.value);"/> <SCRIPT LANGUAGE="JavaScr
Javascript/jQuery動態修改radio/checkbox值
HTML程式碼: <input name="name1" type="radio" value="1" checked="checked" />1 <input name="name1" type="radio" value="0" />0 Jav
通過attr 動態設定CheckBox的checked屬性,會出現第二次設定cheked屬性不起作用的情況
轉載自:http://blog.csdn.net/xiaouncle/article/detail
React 中setState({key:value}) key值 動態變化,如何動態設定key的值。
state = { visible1: false, visible2: false, visible3: false } onShow = (key) => { this.setState({ key: true
jquery獲取img的src值
簡簡單單的一句話,如下: <img id="test" src="1.jpg" alt="test" /> 引用的jquery如下: <script type="text/javascript" language="javascript" src="~/Js/jquery-1.2.6.j
解決Jquery動態給表格賦值時空格後面的內容不顯示的問題
如果從資料庫讀取的資料為A001 002 003,由於沒有給資料加引號,並且會自動給A001加引號,結果就變成了 "A001" 002 003,所以我們在前端看到的資料只有A001 <input value="+data[i]['FName']+" /> 現
c++builder上使用TIDTCPServer和TIDTCPClient進行簡單通訊,如何通過程式碼動態設定TIDTCPServer的Bindings屬性。
這兩天老大讓我實現一個簡單功能就是通過程式碼動態設定TIDTCPServer的Bindings屬性,剛開始我覺得這個問題So Easy,但是做著做著總是出現同樣一個錯誤不知道為什,這個問題一直糾結了我兩天時間終於在今天早上得以解決,在此同大家分享一下在這個過程中我是如何解
jQuery動態設定樣式(style、css)
一、jQuery設定css樣式 <div style="background-color:#ffffff;padding-left:10px;">測試jQuery動態獲取padding-
動態設定video的寬高的方法,js設定和CSS設定
一、csss設定 html: <div class="wrap"> <video controls="controls" class="videoBox" #iframe
c# 通過反射動態為物件賦值 通用方法
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Configuration; using System.Data; using
js+jquery動態設定/增加/刪除/獲取元素屬性的兩種方法集錦對比(動態onclick屬性設定+動態title設定)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html140/strict.dtd"> <html> <head>
關於HTML5中Video標簽無法播放mp4的解決辦法
src 無法 配置 type get 測試 不同的 alt mage 1、首先先排除掉代碼問題、路徑問題、瀏覽器不支持問題等常規問題,這些問題另行百度。 <video width="500px" height="300px" autoplay="autopl