首頁 web前端 H5教程 HTML5 Video/Audio播放本機文件

HTML5 Video/Audio播放本機文件

Jun 05, 2018 am 10:55 AM
audio html5 video

這篇文章主要介紹了關於HTML5 Video/Audio播放本地文件,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

在得到用戶允許後我們還是可以播放本地文件的,在頁面中插入一個input節點並指定type為file,然後把該url設置為audio或video的src值即可

這段時間經常看到開發者在反复詢問同一個問題,為什麼透過設定src屬性,不能播放本地的媒體檔案?例如video.src=”D:\test.mp4”。

這是因為瀏覽器中的JavaScript無法直接存取本機資源(例如檔案系統,鏡頭,麥克風等),除非事先得到了使用者的允許。瀏覽器之所以進行該限制也是很有必要的,試想一下,如果JavaScript能夠肆無忌憚的訪問本地的文件系統,那麼竊取用戶隱私數據就變得輕而易舉了,當用戶訪問網絡上的某個網頁時,不知不覺中自己機器上保存的信用卡卡號,密碼,公司的秘密文件等隱私文件或許已經被惡意的JavaScript程式上傳到了遠方的伺服器上,這對用戶來說是不可容忍的。

在得到使用者允許後我們還是可以播放本地檔案的,下面介紹一個方法。

在頁面中插入一個input節點並指定type為file,如果需要播放多個文件,可以新增屬性multiple。註冊檔案節點被更新時的回呼函數,在回呼函數中呼叫URL.createObjectURL函數來取得剛選擇檔案的url,然後把該url設定為audio或video的src值即可。

程式碼實例如下:

#複製程式碼

程式碼如下:

<html>  
<body>  
<input type="file" id="file" onchange="onInputFileChange()">  
<audio id="audio_id" controls autoplay loop>Your browser can&#39;t support HTML5 Audio</audio>  
<script>  
function onInputFileChange() {  
   var file = document.getElementById(&#39;file&#39;).files[0];  
   var url = URL.createObjectURL(file);  
   console.log(url);  
   document.getElementById("audio_id").src = url;  
}  
</script>  
</body>  
</html>
登入後複製

該程式碼在Chrome 30和Firefox 24上測試通過,在IE上應該存在一定的兼容性問題(據我所知IE8及以前的版本肯定是不能工作的),因為IE對HTML5的支援不好,不知道IE10有沒有實作相關的API。

相關推薦:

HTML中的標籤的使用詳解

以上是HTML5 Video/Audio播放本機文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

HTML 中的表格邊框 HTML 中的表格邊框 Sep 04, 2024 pm 04:49 PM

HTML 表格邊框指南。在這裡,我們以 HTML 中的表格邊框為例,討論定義表格邊框的多種方法。

HTML 左邊距 HTML 左邊距 Sep 04, 2024 pm 04:48 PM

HTML 左邊距指南。在這裡,我們討論 HTML margin-left 的簡要概述及其範例及其程式碼實作。

HTML 中的巢狀表 HTML 中的巢狀表 Sep 04, 2024 pm 04:49 PM

這是 HTML 中巢狀表的指南。這裡我們討論如何在表中建立表格以及對應的範例。

HTML 表格佈局 HTML 表格佈局 Sep 04, 2024 pm 04:54 PM

HTML 表格佈局指南。在這裡,我們詳細討論 HTML 表格佈局的值以及範例和輸出。

Klipsch 推出 Flexus Core 300 旗艦條形音箱,支援 8K、12 個揚聲器和房間校正 Klipsch 推出 Flexus Core 300 旗艦條形音箱,支援 8K、12 個揚聲器和房間校正 Sep 05, 2024 am 10:16 AM

Klipsch Flexus Core 300 是該系列中的頂級型號,位於該公司條形音箱系列中現有的 Flexus Core 200 之上。根據 Klipsch 的說法,這是世界上第一個聲音可以適應現實的條形音箱。

HTML 有序列表 HTML 有序列表 Sep 04, 2024 pm 04:43 PM

HTML 有序列表指南。在這裡我們也分別討論了 HTML 有序列表和類型的介紹以及它們的範例

HTML 輸入佔位符 HTML 輸入佔位符 Sep 04, 2024 pm 04:54 PM

HTML 輸入佔位符指南。在這裡,我們討論 HTML 輸入佔位符的範例以及程式碼和輸出。

在 HTML 中移動文字 在 HTML 中移動文字 Sep 04, 2024 pm 04:45 PM

HTML 中的文字移動指南。在這裡我們討論一下marquee標籤如何使用語法和實作範例。

See all articles