成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用 JavaScript object URLs,可以處理圖像、音頻和視頻

開發 前端
在這篇文章中,我們來看看如何使用object URL來引用可以使用DOM文件對象引用的數據。

許多Web應用程序需要在前端處理文件輸入,或者將文件上傳到后端。

在這篇文章中,我們來看看如何使用object URL來引用可以使用DOM文件對象引用的數據。

使用object URLs

我們可以調用 URL.createObjectURL 來從文件對象中創建一個URL字符串對象,方法如下。

  1. const objectURL = window.URL.createObjectURL(fileObj); 

然后,我們可以在URL字符串對象上調用 revokeURL 以從內存中釋放URL資源:

  1. URL.revokeObjectURL(objectURL); 

使用object URLs 顯示圖片

例如,我們可以使用 createObjectURL 方法在 img 元素中顯示選定的圖像文件,如下所示。

首先,我們編寫以下HTML:

  1. <input type="file"  accept="image/*"> 
  2. <img /> 

然后,我們可以編寫以下代碼來偵聽文件輸入的change事件,然后使用 createObjectURL 設置 img 元素的 src 屬性,如下所示:

  1. const fileInput = document.querySelector('input'); 
  2. const img = document.querySelector('img'); 
  3. fileInput.onchange = () => { 
  4.   const file = fileInput.files[0]; 
  5.   img.src = URL.createObjectURL(file); 
  6.   img.onload = () => { 
  7.     URL.revokeObjectURL(img.src); 
  8.   } 

在上面的代碼中,我們在選定的文件對象 file 上調用了 createObjectURL 來創建可以設置為 src 屬性值的URL。然后,在加載圖像時,我們調用 revokeObjectURL 清除用于創建URL的資源。

使用object URLs 顯示PDF

我們還可以使用object URL來顯示PDF。我們使用相同的 crateObjectURL 方法,但將其設置為 iframe 的URL而不是img元素。

例如,我們可以編寫以下HTML:

  1. <input type="file" > 
  2. <iframe> 

然后,我們可以將 src 屬性設置為PDF對象URL的iframe,如下所示:

  1. const fileInput = document.querySelector('input'); 
  2. const iframe = document.querySelector('iframe'); 
  3. fileInput.onchange = () => { 
  4.   const file = fileInput.files[0]; 
  5.   const objUrl = URL.createObjectURL(file); 
  6.   iframe.setAttribute('src', objUrl); 
  7.   URL.revokeObjectURL(objUrl); 

我們使用 createObjectURL 和上傳的PDF文件來創建Object URL字符串。然后我們可以為其設置 src 屬性。然后,PDF將顯示在Firefox的iframe中。

將 object URLs 與其他文件類型一起使用

Object URL也可以與其他文件類型一起使用。例如,我們可以選擇一個視頻文件并通過編寫以下代碼來播放它。首先,我們編寫以下HTML代碼:

  1. <input type='file' /> 
  2. <video controls /> 

然后,要播放從文件輸入中選擇的視頻文件,我們編寫:

  1. const fileInput = document.querySelector('input'); 
  2. const video = document.querySelector('video'); 
  3. fileInput.onchange = async () => { 
  4.   const file = fileInput.files[0]; 
  5.   const objUrl = URL.createObjectURL(file); 
  6.   video.src = objUrl
  7.   await video.play(); 
  8.   URL.revokeObjectURL(objUrl); 

在上面的代碼中,我們有一個異步函數,該函數從選定的視頻文件創建Object URL。然后,將Object URL設置為video元素的src屬性。

然后,我們調用視頻 play 以播放視頻。 play 方法返回一個Promise,因此我們必須添加一個 await 等待該Promise的解決。

完成此操作后,我們可以在Object URL上調用 revokeObjectURL 以釋放資源。

總結

我們可以創建Object URL并將其設置為各種元素的src屬性,以顯示或播放它們。在大多數瀏覽器中,它都可以處理圖像,音頻和視頻。

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2022-08-12 08:38:52

FFmpegLinux命令

2010-10-08 10:03:52

JavaScript圖像

2023-01-05 16:51:04

機器學習人工智能

2019-09-10 10:44:29

物聯網工業物聯網智慧農業

2010-02-02 17:18:16

Python圖像處理

2015-08-26 10:27:33

2023-03-09 15:25:49

2024-05-06 11:12:22

圖像處理數學計算NumPy

2023-11-24 09:26:29

Java圖像

2016-10-31 20:21:05

LinuxOctave音頻文件

2016-10-31 19:41:50

LinuxOctave音頻文件

2023-07-26 08:48:36

AForge庫.NET

2022-07-18 08:48:06

HtmxHTML

2025-02-17 12:00:00

PythonOpenCV提取圖像

2020-05-12 11:35:53

JavaScript開源技術

2020-05-09 11:15:12

JavaScript圖像處理 開源

2020-06-16 08:39:35

JavaScript圖像處理庫

2016-09-12 14:42:24

LinuxOctave音頻文件

2023-11-23 11:37:13

JavaScript數組

2009-06-10 21:51:42

JavaScript XMLFirefox
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: h片在线免费看 | 久久久www成人免费无遮挡大片 | 我我色综合 | 国产成人福利视频在线观看 | 亚洲激情综合网 | 一区二区在线 | 亚洲国产精品99久久久久久久久 | 在线2区| 亚洲成人综合网站 | 91免费在线看 | 在线免费观看视频你懂的 | 国产免费一区二区 | 国产精品成人国产乱一区 | 中文字幕一区二区三区精彩视频 | 日本 欧美 国产 | 天天综合网天天综合 | 91视频大全| 手机av免费在线 | 欧美精品免费观看二区 | 秋霞电影一区二区 | 国产成人精品一区二区三区 | 国产精品一区在线观看 | 久久午夜精品 | 欧美一级精品片在线看 | 国产剧情久久 | 国产美女一区 | 日本天天操 | 日韩一区二区在线视频 | 免费成人高清在线视频 | 午夜伦理影院 | 国产精品国产三级国产aⅴ无密码 | 美国黄色一级片 | 一区二区三区亚洲视频 | 国产va | 男女网站在线观看 | 黄a免费网络| 国产伦精品一区二区三区四区视频 | 亚洲国产aⅴ成人精品无吗 国产精品永久在线观看 | 美女在线一区二区 | 97精品国产97久久久久久免费 | 精品一区二区久久久久久久网站 |