久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 通過jquery動態(tài)的設(shè)置video src的值無法播放視頻?

瀏覽:113日期:2022-12-13 18:01:58

問題描述

<p id='video-box'> <video controls> <source src='http://m.baoyu77737.com/wenda/3141.html'> </video></p><a href='javascript:;' 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();});

demo在這里https://jsfiddle.net/r9u1cn7o/作一個通過點擊不同的標簽彈出彈框播放相應(yīng)的視屏,但是通過jquery成功的給src賦值了,但是不知道為什么播放不了?

問題解答

回答1:

通過 jQuery 確實是給 source 的 src 賦值成功,從調(diào)試來看,瀏覽器并沒有去發(fā)起請求去獲得相應(yīng)的視頻,而只是單純的將 a 標簽的 src 中的值賦值給 source 了。

但是如果這么做,瀏覽器就會去請求地址獲得視頻文件:

$('.dj').on('click', function() { var src = $(this).data('src'), sourceDom = $('<source src='http://m.baoyu77737.com/wenda/3141.html'+ src +''>'); $('#video-box video').append(sourceDom); $('#video-box').show(); // 自動播放 $('#video-box video')[0].play()});

因此,可以推斷出來的是,當(dāng) video 中存在 source 標簽的時候,瀏覽器渲染之后會自動去獲取地址,即便地址改變,瀏覽器也不會再去獲取地址。但是通過動態(tài)的插入 source 標簽的方式,可以觸發(fā)瀏覽器進行重排,從而去獲取相應(yīng)地址的文件進行播放。

回答2:

<video> <source src='http://m.baoyu77737.com/wenda/xxx.mp4'/> <source src='http://m.baoyu77737.com/wenda/xxx.ogg'/></video>

source 里的 src 只會在渲染的時候被 check 一次.要動態(tài)調(diào)整 src , 你應(yīng)該從 video 入手, 改成這樣應(yīng)該就沒問題了$('#video-box video').prop('src',src)

回答3:

別用source標簽,直接寫到video標簽里;另外用attr()吧。還有就是video標簽的width和height別寫到style里,拿出來~

回答4:

jsfidle不能嵌入視頻. 換到本地就好了

回答5:

video標簽支持的視頻格式有(1)H.264編碼的mp4文件(2)webm(3)ogg 其他后綴的文件因為專利等問題暫時不支持,可以考慮轉(zhuǎn)碼試試

回答6:

加個play()事件就好了

標簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 丰镇市| 汶上县| 雅江县| 偏关县| 基隆市| 天水市| 长岛县| 常山县| 聂拉木县| 昌平区| 新竹市| 池州市| 奉化市| 霍邱县| 璧山县| 宁陕县| 七台河市| 新兴县| 南靖县| 太湖县| 无锡市| 民勤县| 晴隆县| 常熟市| 田阳县| 井研县| 株洲县| 留坝县| 古浪县| 和林格尔县| 会泽县| 哈巴河县| 丰县| 怀仁县| 合川市| 青神县| 霍州市| 樟树市| 西平县| 阜平县| 通化市|