本文已經過原作者 Tapas Adhikary 授權翻譯
上傳文件功能可以說是項目經常出現的需求。從在社交媒體上上傳照片到在求職網站上發布簡歷,文件上傳無處不在。在本文中,我們將討論 HTML文件上傳支持的10種用法,希望對你有用。
我們可以將input 類型指定為file,以在Web應用程序中使用文件上傳功能。
<input type="file" id="file-uploader">
input filte 提供按鈕上傳一個或多個文件。默認情況下,它使用操作系統的本機文件瀏覽器上傳單個文件。成功上傳后,File API 使得可以使用簡單的 JS 代碼讀取File對象。要讀取File對象,我們需要監聽 change事件。
首先,通過id獲取文件上傳的實例:
const fileUploader = document.getElementById('file-uploader');
然后添加一個change 事件偵聽器,以在上傳完成后讀取文件對象, 我們從event.target.files屬性獲取上傳的文件信息:
fileUploader.addEventListener('change', (event) => {
const files = event.target.files;
console.log('files', files);
});
在控制臺中觀察輸出結果,這里關注一下FileList數組和File對象,該對象具有有關上傳文件的所有元數據信息。
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/rNLOyRm
如果我們想上傳多個文件,需要在標簽上添加 multiple 屬性:
<input type="file" id="file-uploader" multiple />
現在,我們可以上傳多個文件了,以前面事例為基礎,選擇多個文件上傳后,觀察一下控制臺的變化:
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/MWeamYp
每當我們上傳文件時,File對象都有元數據信息,例如file name,size,last update time,type 等等。這些信息對于進一步的驗證和特殊處理很有用。
const fileUploader = document.getElementById('file-uploader');
// 聽更 change 件并讀取元數據
fileUploader.addEventListener('change', (event) => {
// 獲取文件列表數組
const files = event.target.files;
// 遍歷并獲取元數據
for (const file of files) {
const name = file.name;
const type = file.type ? file.type: 'NA';
const size = file.size;
const lastModified = file.lastModified;
console.log({ file, name, type, size, lastModified });
}
});
下面是單個文件上傳的輸出結果:
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/gOMaRJv
我們可以使用accept屬性來限制要上載的文件的類型,如果只想上傳的文件格式是 .jpg,.png 時,可以這么做:
<input type="file" id="file-uploader" accept=".jpg, .png" multiple>
在上面的代碼中,只能選擇后綴是.jpg和.png的文件。
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/OJXymRP
成功上傳文件后顯示文件內容,站在用戶的角度上,如果上傳之后,沒有一個預覽的,就很奇怪也不體貼。
我們可以使用FileReader對象將文件轉換為二進制字符串。然后添加load 事件偵聽器,以在成功上傳文件時獲取二進制字符串。
// FileReader 實例
const reader = new FileReader();
fileUploader.addEventListener('change', (event) => {
const files = event.target.files;
const file = files[0];
reader.readAsDataURL(file);
reader.addEventListener('load', (event) => {
const img = document.createElement('img');
imageGrid.appendChild(img);
img.src = event.target.result;
img.alt = file.name;
});
});
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/zYBvdjZ
如果用戶上傳圖片過大,為了不讓服務器有壓力,我們需要限制圖片的大小,下面是允許用戶上傳小于 1M 的圖片,如果大于 1M 將上傳失敗。
fileUploader.addEventListener('change', (event) => {
// Read the file size
const file = event.target.files[0];
const size = file.size;
let msg = '';
// 檢查文件大小是否大于1MB
if (size > 1024 * 1024) {
msg = `<span style="color:red;">The allowed file size is 1MB. The file you are trying to upload is of ${returnFileSize(size)}</span>`;
} else {
msg = `<span style="color:green;"> A ${returnFileSize(size)} file has been uploaded successfully. </span>`;
}
feedback.innerHTML = msg;
});
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/pobjMKv
更好的用戶體驗是讓用戶知道文件上傳進度,前面我們用過了FileReader以及讀取和加載文件的事件。
const reader = new FileReader();
FileReader還有一個progress 事件,表示當前上傳進度,配合HTML5的progress標簽,我們來模擬一下文件的上傳進度。
reader.addEventListener('progress', (event) => {
if (event.loaded && event.total) {
// 計算完成百分比
const percent = (event.loaded / event.total) * 100;
// 將值綁定到 `progress`標簽
progress.value = percent;
}
});
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/eYzpwYj
我們可以上傳整個目錄嗎?嗯,這是可能的,但有一些限制。有一個叫做webkitdirectory的非標準屬性(目前只有谷歌瀏覽器還有Microsoft Edge支持按照文件夾進行上傳),它允許我們上傳整個目錄。
目前只有谷歌瀏覽器還有Microsoft Edge支持按照文件夾進行上傳,具體可以看下百度云盤的網頁版的上傳按鈕,在火狐下就支持按照文件進行上傳,而在谷歌和Edge下,就會給用戶提供一個下拉,讓用戶選擇是根據文件進行上傳還是根據文件夾進行上傳。
<input type="file" id="file-uploader" webkitdirectory />
用戶必須需要確認才能上傳目錄
用戶單擊“上傳”按鈕后,就會進行上傳。這里要注意的重要一點。FileList數組將以平面結構的形式包含有關上載目錄中所有文件的信息。對于每個File對象,webkitRelativePath屬性表示目錄路徑。
例如,上傳一個主目錄及其下的其他文件夾和文件:
現在,File 對象將將webkitRelativePath填充為:
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/dyXYRKp
不支持文件上傳的拖拽就有點 low 了,不是嗎?我們來看看如何通過幾個簡單的步驟實現這一點。
首先,創建一個拖放區域和一個可選的區域來顯示上傳的文件內容。
<div id="container">
<h1>Drag & Drop an Image</h1>
<div id="drop-zone">
DROP HERE
</div>
<div id="content">
Your image to appear here..
</div>
</div>
通過它們各自的ID獲取dropzone和content 區域。
const dropZone = document.getElementById('drop-zone');
const content = document.getElementById('content');
添加一個dragover 事件處理程序,以顯示將要復制的內容的效果:
dropZone.addEventListener('dragover', event => {
event.stopPropagation();
event.preventDefault();
event.dataTransfer.dropEffect = 'copy';
});
接下來,我們需要一個drop事件監聽器來處理。
dropZone.addEventListener('drop', event => {
// Get the files
const files = event.dataTransfer.files;
});
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/ExyVoXN
有一個特殊的方法叫做URL.createobjecturl(),用于從文件中創建唯一的URL。還可以使用URL.revokeObjectURL()方法來釋放它。
URL.revokeObjectURL() 靜態方法用來釋放一個之前已經存在的、通過調用 URL.createObjectURL() 創建的 URL 對象。當你結束使用某個 URL 對象之后,應該通過調用這個方法來讓瀏覽器知道不用在內存中繼續保留對這個文件的引用了。
fileUploader.addEventListener('change', (event) => {
const files = event.target.files;
const file = files[0];
const img = document.createElement('img');
imageGrid.appendChild(img);
img.src = URL.createObjectURL(file);
img.alt = file.name;
});
如果大家看到這里,有點激動,想手賤一下,可以 CodePen 玩玩,地址:https://codepen.io/atapas/pen/BazzaoN
無論何時,如果你還想學習本文涉及的一些知識,你可以在這里嘗試。
https://html-file-upload.netlify.app/
irefox 瀏覽器
Firefox 瀏覽器,中文名"火狐瀏覽器",是來自 Mozilla 的一款免費的開源 web 瀏覽器。
Firefox 發布于 2004 年,也是當今最流行的瀏覽器之一。
Firefox 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
下載 Firefox
Firefox 統計
下表是 瀏覽器統計信息 中關于 Firefox 使用情況的細節:
2014 | 總計 | FF 30 | FF 29 | FF 28 | FF 27 | FF 26 | FF 25 | 更舊 | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
5 月 | 24.9% | 0.1% | 14.2% | 5.2% | 0.5% | 0.5% | 0.2% | 4.2% | ||||
4 月 | 25.0% | 1.1% | 18.1% | 1.2% | 0.7% | 0.3% | 3.6% | |||||
3 月 | 25.6% | 0.3% | 3.4% | 16.3% | 1.0% | 0.4% | 4.2% | |||||
2 月 | 26.4% | 0.6% | 11.7% | 8.7% | 0.6% | 4.8% | ||||||
1 月 | 26.9% | 1.2% | 18.9% | 1.0% | 5.8% | |||||||
2013 | 總計 | FF 26 | FF 25 | FF 24 | FF 23 | FF 22 | FF 21 | FF 20 | FF 19 | FF 18 | FF 17 | 更舊 |
12 月 | 26.8% | 6.9% | 13.3% | 1.1% | 0.5% | 0.4% | 0.3% | 0.4% | 0.2% | 0.2% | 0.5% | 3.0% |
11 月 | 26.8% | 1.0% | 16.2% | 3.5% | 0.7% | 0.5% | 0.4% | 0.4% | 0.3% | 0.2% | 0.7% | 2.9% |
10 月 | 27.2% | 0.1% | 1.3% | 18.4% | 2.0% | 0.7% | 0.4% | 0.5% | 0.3% | 0.4% | 0.7% | 2.5% |
9 月 | 27.8% | 0.1% | 0.3% | 3.1% | 17.5% | 1.0% | 0.6% | 0.5% | 0.3% | 0.4% | 0.9% | 3.2% |
8 月 | 28.2% | 0.7% | 10.8% | 9.9% | 1.0% | 0.7% | 0.4% | 0.4% | 0.8% | 3.5% | ||
7 月 | 28.9% | 0.1% | 1.2% | 18.0% | 3.1% | 1.0% | 0.5% | 0.5% | 0.8% | 3.7% | ||
6 月 | 28.9% | 0.1% | 1.7% | 19.8% | 1.3% | 0.7% | 0.5% | 0.8% | 4.0% | |||
5 月 | 27.7% | 0.1% | 0.5% | 6.5% | 14.0% | 0.9% | 0.6% | 0.8% | 4.3% | |||
4 月 | 27.9% | 0.1% | 0.7% | 12.9% | 7.3% | 0.8% | 0.8% | 5.9% | ||||
3 月 | 28.5% | 0.1% | 0.9% | 19.0% | 1.4% | 0.9% | 6.2% | |||||
2 月 | 29.6% | 0.1% | 0.2% | 4.6% | 16.0% | 1.2% | 7.5% | |||||
1 月 | 30.2% | 0.1% | 0.6% | 12.4% | 8.3% | 8.8% | ||||||
2012 | 總計 | FF 17 | FF 16 | FF 15 | FF 14 | FF 13 | FF 12 | FF 11 | FF 9-10 | FF 4-8 | FF 3.6 | 更舊 |
12 月 | 31.1% | 16.3% | 5.6% | 1.3% | 1.0% | 0.7% | 1.1% | 0.6% | 1.2% | 1.2% | 0.8% | 1.3% |
11 月 | 31.2% | 2.5% | 19.4% | 1.8% | 1.2% | 0.8% | 1.2% | 0.6% | 1.3% | 1.3% | 0.8% | 0.3% |
10 月 | 31.8% | 0.4% | 9.5% | 12.4% | 1.8% | 1.0% | 1.4% | 0.8% | 1.4% | 1.6% | 1.0% | 0.5% |
9 月 | 32.2% | 0.8% | 17.7% | 4.8% | 1.3% | 1.6% | 1.0% | 1.6% | 1.9% | 1.2% | 0.3% | |
8 月 | 32.8% | 1.9% | 20.3% | 2.1% | 1.8% | 1.1% | 1.7% | 2.1% | 1.2% | 0.7% | ||
7 月 | 33.7% | 0.3% | 7.4% | 15.2% | 3.0% | 1.3% | 2.1% | 2.4% | 1.5% | 0.5% | ||
6 月 | 34.4% | 0.6% | 12.1% | 12.5% | 1.6% | 2.3% | 2.7% | 1.8% | 0.8% | |||
5 月 | 35.2% | 0.1% | 0.8% | 21.4% | 3.8% | 2.7% | 3.4% | 2.3% | 0.7% | |||
4 月 | 35.8% | 0.1% | 2.6% | 21.6% | 3.8% | 3.8% | 3.1% | 0.8% | ||||
3 月 | 36.3% | 0.3% | 9.1% | 17.3% | 5.0% | 3.7% | 0.9% | |||||
2 月 | 37.1% | 0.1% | 0.6% | 24.2% | 6.5% | 4.3% | 1.4% | |||||
1 月 | 37.2% | 0.1% | 18.6% | 12.4% | 5.0% | 1.1% | ||||||
2011 | 總計 | FF 9 | FF 8 | FF 7 | FF 6 | FF 5 | FF 4 | FF 3.6 | FF 3.5 | FF 3.0 | 更舊 | |
12 月 | 37.7% | 1.8% | 22.8% | 2.1% | 1.5% | 1.2% | 1.3% | 5.6% | 0.6% | 0.5% | 0.3% | |
11 月 | 38.1% | 0.4% | 12.7% | 11.5% | 2.2% | 1.5% | 1.5% | 6.9% | 0.6% | 0.5% | 0.3% | |
10 月 | 38.7% | 0.6% | 19.8% | 5.1% | 2.0% | 1.8% | 7.9% | 0.7% | 0.5% | 0.3% | ||
9 月 | 39.7% | 1.5% | 22.2% | 3.1% | 2.2% | 9.0% | 0.7% | 0.7% | 0.3% | |||
8 月 | 40.6% | 9.5% | 15.9% | 2.9% | 10.3% | 0.8% | 0.8% | 0.4% | ||||
7 月 | 42.0% | 0.6% | 23.2% | 4.6% | 11.5% | 0.9% | 0.9% | 0.3% | ||||
6 月 | 42.2% | 5.6% | 21.5% | 12.3% | 1.5% | 0.9% | 0.4% | |||||
5 月 | 42.4% | 0.3% | 23.4% | 15.6% | 1.8% | 1.0% | 0.3% | |||||
4 月 | 42.9% | 15.7% | 23.8% | 2.1% | 1.1% | 0.2% | ||||||
3 月 | 42.2% | 5.2% | 32.9% | 2.5% | 1.3% | 0.3% | ||||||
2 月 | 42.4% | 1.9% | 35.8% | 2.9% | 1.5% | 0.3% | ||||||
1 月 | 42.8% | 1.5% | 36.1% | 3.1% | 1.7% | 0.4% | ||||||
2010 | 總計 | FF 4 | FF 3.6 | FF 3.5 | FF 3.0 | 更舊 | ||||||
12 月 | 43.5% | 1.1% | 36.5% | 3.5% | 2.0% | 0.4% | ||||||
11 月 | 44.0% | 0.8% | 36.9% | 3.8% | 2.0% | 0.5% | ||||||
10 月 | 44.4% | 0.7% | 36.2% | 4.5% | 2.4% | 0.6% | ||||||
9 月 | 45.1% | 0.8% | 35.3% | 5.6% | 2.9% | 0.5% | ||||||
8 月 | 45.8% | 0.6% | 35.2% | 6.1% | 3.1% | 0.6% | ||||||
7 月 | 46.4% | 0.4% | 34.5% | 7.3% | 3.6% | 0.6% | ||||||
6 月 | 46.6% | 32.7% | 9.1% | 4.0% | 0.8% | |||||||
5 月 | 46.9% | 31.7% | 10.0% | 4.4% | 0.8% | |||||||
4 月 | 46.4% | 29.4% | 11.5% | 4.6% | 0.9% | |||||||
3 月 | 46.2% | 22.1% | 17.6% | 5.6% | 0.9% | |||||||
2 月 | 46.5% | 10.5% | 28.5% | 6.5% | 1.0% | |||||||
1 月 | 46.3% | 2.2% | 34.2% | 8.6% | 1.3% | |||||||
2009 | 總計 | FF 3.5 | FF 3.0 | FF 2.0 | 更舊 | |||||||
12 月 | 46.4% | 33.3% | 11.2% | 1.2% | 0.7% | |||||||
11 月 | 47.0% | 31.4% | 13.6% | 1.5% | 0.5% | |||||||
10 月 | 47.5% | 29.8% | 15.7% | 1.6% | 0.4% | |||||||
9 月 | 46.6% | 27.3% | 17.2% | 1.8% | 0.3% | |||||||
8 月 | 47.4% | 21.0% | 24.0% | 1.9% | 0.5% | |||||||
7 月 | 47.9% | 12.1% | 33.3% | 1.9% | 0.6% | |||||||
6 月 | 47.3% | 1.2% | 43.4% | 2.3% | 0.4% | |||||||
5 月 | 47.7% | 44.3% | 2.9% | 0.5% | ||||||||
4 月 | 47.1% | 43.4% | 2.8% | 0.9% | ||||||||
3 月 | 46.5% | 42.2% | 3.0% | 1.3% | ||||||||
2 月 | 46.4% | 41.5% | 3.8% | 1.1% | ||||||||
1 月 | 45.5% | 39.5% | 4.6% | 1.4% | ||||||||
2008 | 總計 | FF 3.0 | FF 2.0 | FF 1.5 | Moz | |||||||
12 月 | 44.7% | 38.1% | 6.2% | 0.1% | 0.3% | |||||||
11 月 | 44.6% | 35.9% | 8.0% | 0.3% | 0.4% | |||||||
10 月 | 44.5% | 34.9% | 8.7% | 0.4% | 0.5% | |||||||
9 月 | 43.1% | 31.9% | 10.1% | 0.6% | 0.5% | |||||||
8 月 | 44.2% | 25.5% | 17.5% | 0.7% | 0.5% | |||||||
7 月 | 43.1% | 20.7% | 21.1% | 0.8% | 0.5% | |||||||
6 月 | 41.5% | 8.9% | 31.2% | 0.9% | 0.5% | |||||||
5 月 | 40.5% | 2.9% | 35.9% | 1.0% | 0.7% |
以上統計數據是基于 W3CSchool 網站的用戶。
Firefox 29
Firefox 29 發布于 2014 年 4 月 29 日。
Firefox 29 可以在 Windows、Mac、Linux 和 Android 上運行。
新特性:
一些重新設計的工具和一個更新的界面
增強的火狐同步服務
菜單移到右上角
新的 "定制工具",您可以在其中添加或者移動功能和附加組件
用戶可以通過單擊創建一個書簽
支持 CSS box-sizing 屬性(不帶 -moz- 前綴)
支持 HTML5 input type="number"
支持 HTML5 input type="color"
Firefox 28
Firefox 28 發布于 2014 年 3 月 18 日。
Firefox 28 可以在 Windows、Mac、Linux 和 Android 上運行。
新特性:
Mac OS X:通知中心(Notification Center)支持 web 通知
水平的 HTML5 音頻/視頻的音量控制
支持 WebM 中的 Opus
實現 VP9 視頻解碼
支持 MathML 2.0 'mathvariant' 屬性
后臺線程報告
支持布局中的多線 flexbox
Firefox 27
Firefox 27 發布于 2014 年 2 月 4 日。
Firefox 27 可以在 Windows、Mac、Linux 和 Android 上運行。
新特性:
對 Firefox Social API 的一個重大更新 - 現在允許用戶同時運行多個服務
支持 Google 的 SPDY 3.1 協議及傳輸層安全(TLS - Transport Layer Security)版本 1.1 和 1.2 - 這些基本上是著名的 SSL 加密協議的接班者
使用 "all:unset" 重置樣式表
支持滾動的字段集
CSS 光標關鍵字 -moz-grab 和 -moz-grabbing 已沒有前綴
支持數學函數 Math.hypot()
畫布(Canvas)上支持虛線
Firefox 26
Firefox 26 發布于 2013 年 12 月 10 日。
Firefox 26 可以在 Windows、Mac、Linux 和 Android 上運行。
新特性:
所有的 Java 插件默認為 "點擊播放"
密碼管理器支持腳本生成的密碼域
在 Linux 上支持 H.264 編碼的視頻
在 Windows XP 上支持 MP3 音頻 - 這完成了跨 Windows 操作系統版本的 MP3 支持
當站點請求 AppCache 時,移除提示
支持 CSS3 image-orientation 屬性
新的應用程序管理器(App Manager) - 允許您在 Firefox 操作系統的手機和 Firefox 操作系統的模擬器上部署和調試 HTML5 程序
IndexedDB 可用作一個 "optimistic" 的存儲區 - 使用 LRU 驅逐策略,不要求在池中存儲任何提示和數據,只是一個短暫的臨時存儲
減少內存使用,改進圖像處理
Firefox 25
Firefox 25 發布于 2013 年 10 月 29 日。
Firefox 25 可以在 Windows、Mac、Linux 和 Android 上運行。
新特性:
網絡音頻支持
CSS3 background-attachment:local 支持
iframe 文檔內容可內聯指定
許多新的 ECMAScript 6 函數都是可用的
探查器(Profiler)工具可以保存和導入測試結果
Firefox 24
Firefox 24 發布于 2013 年 9 月 17 日。
Firefox 24 可以在 Windows、Mac、Linux 和 Android 上運行。
新特性:
啟用對 WebRTC 的支持(在 Android 上)
在 Android 上共享 NFC
增加大規模關閉右側標簽功能
在 OS X 10.7 上新的滾動條樣式
將聊天窗口拖拽成獨立窗口
優化在圖像平鋪和縮放時的圖像周圍的顯著 SVG 渲染
為增強的調試體驗改進瀏覽器控制臺,取代現有的錯誤控制臺
不再支持撤銷列表功能
不再支持從應用程序或配置文件目錄加載的 sherlock 文件
Firefox 23
Firefox 23 發布于 2013 年 8 月 7 日。
Firefox 23 可以在 Windows、Mac、Linux 和 Android 手機版上運行。
新特性:
新的 logo
混合的內容阻止程序 - 通過完全限制 URL,來防止閱讀網絡上不安全的內容
分享按鈕 - 讓用戶只需要通過一個簡單的點擊,就可以把內容分享給朋友/家人
專門為開發人員設計的網絡監控工具 - 分解網站組件,并通知開發人員加載的時間
Firefox 22
Firefox 22 發布于 2013 年 6 月 25 日。
Firefox 22 可以在 Windows、Mac、Linux 和 Android 手機版上運行。
新特性:
修復 14 個安全問題
默認情況下,啟用 WebRTC
OdinMonkey - 改進 JavaScript 性能
可以改變 HTML5 音頻/視頻播放速率
新的顯示縮放選項,默認情況下是啟用的 - 在高分辨率顯示器上呈現較大的文本
文本文件的自動換行
Firefox 21
Firefox 21 發布于 2013 年 5 月 14 日。
Firefox 21 可以在 Windows、Mac、Linux 和 Android 手機版上運行。
新特性:
火狐健康報告(Firefox Health Report) - 一個調整瀏覽器的工具
改進的啟動時間
支持 HTML5 <main> 元素
支持帶作用域的樣式表
三個 "不跟蹤" 的選項:"跟蹤"、"不跟蹤" 和 "未設定"
擴展的社交 API(Social API) - 增加新的社交服務:Cliqz、Mixi 和 msnNOW,以及 Firefox 的 Facebook Messenger(一種桌面窗口聊天客戶端)
Firefox 20
Firefox 20 發布于 2013 年 4 月 2 日。
Firefox 20 可以在 Windows、Mac、Linux 和 Android 手機版上運行。
新特性:
新的下載管理器
私人瀏覽窗口
在單獨的窗口中查看開發工具
在瀏覽器不掛起的情況下關閉掛起的插件
<canvas> 現在支持混合模式
各種 <audio> 和 <video> 的改進
Firefox 19
Firefox 19 發布于 2013 年 2 月 20 日。
Firefox 19 可以在 Windows、Mac 和 Linux 上運行。
新特性:
新的內置的 PDF 閱讀器 - 不需要插件即可閱讀 PDF
@page 支持打印的文檔
導出畫布內容為一個圖像 - canvas 元素的內容可通過 toBlob() 導出為一個圖像
實現 CSS 視口-百分比長度單位(vh、vw、vmin 和 vmax)
支持 CSS text-transform:full-width
更快的啟動
XForms 已被移除
Firefox 18
Firefox 18 發布于 2013 年 1 月 8 日。
Firefox 18 可以在 Windows、Mac OS X(Snow Leopard、Lion 和 Mountain Lion)、Linux 和 Android 上運行。
新特性:
IonMonkey - 新的 JavaScript 編譯器(比 Firefox 17 快了 7% - 26%)
支持視網膜顯示
內置的 PDF 查看器
初步支持網絡實時通信(WebRTC - Web Real Time Communication)
Firefox 17
Firefox 17 發布于 2012 年 11 月 20 日。
Firefox 17 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
更新 Awesome Bar - 帶有更大的圖標
標簽動畫
社交 API(Social API) - 允許您通過瀏覽器登錄到您的社交網絡(Facebook)
實現單擊播放 - 為了防止弱勢插件版本在未經過用戶允許的情況下運行/li>
為頁面檢查器中的 HTML/DOM 增加新的標記面板
實現 HTML5 沙盒(sandbox)屬性(用于 iframes)
支持 Mountain Lion 的通知中心(Notification Center)
Firefox 16
Firefox 16 發布于 2012 年 10 月 9 日。
Firefox 16 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
本地支持 PDF
新的開發工具欄 - 允許您訪問 Web 控制臺、檢查器和調試器。工具欄本身支持一些命令
針對 OS X 的 VoiceOver 支持
Web 應用程序的支持 - 開始使用在 Mozilla app 目錄 中的應用程序
增量垃圾回收(Incremental Garbage Collection) - 加快您的瀏覽器,回收/重復使用 JavaScript 程序不再使用的內存
在 Firefox 16 中支持無前綴化的 CSS3 動畫、過渡效果(Transitions)、轉換(Transforms)和漸變(Gradients)。
Firefox 15
Firefox 15 發布于 2012 年 8 月 28 日。
Firefox 15 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
無縫背景更新
停止由附加組件引起的大多數內存泄漏
支持 SPDY 網絡協議 v3
WebGL 增強功能
HTML5 - 支持 <source> 中的 media 屬性
HTML5 - 支持 <audio> 和 <video> 中的 played 屬性
CSS3 - 支持 CSS word-break 屬性
更快的調試器
新的設計工具,允許 Web 開發人員在桌面和移動的站點視圖之間進行切換
本地支持 Opus 音頻編解碼器
Firefox 14
Firefox 14 發布于 2012 年 7 月 17 日。
Firefox 14 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
隱私特征 - Firefox 使用 HTTPS 加密您的 Google 搜索
Bug 修復 - 為 Mac OS X Lion 提供全屏支持
安全特性 - 您可以把經常訪問的站點和信任的站點放入白名單
Firefox 13
Firefox 13 發布于 2012 年 6 月 5 日。
Firefox 13 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
默認的主頁能更快地訪問書簽、歷史、設置等
當打開一個新標簽時,用戶可以看到他們最常訪問的網頁
默認情況下,啟用 SPDY 協議,以便更快地瀏覽被支持的站點
總計 72 個改進,包括頁面檢查器(Page Inspector)、HTML 面板、樣式檢查器(Style Inspector)、暫存器(Scratchpad)和樣式編輯器(Style Editor)
改進支持下列的 CSS 屬性:column-fill、CSS3 background-position
支持 :invalid 偽類
現在支持 CSS3 <angle> 類型單位
Firefox 12
Firefox 12 發布于 2012 年 4 月 24 日。
Firefox 12 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
Windows:Firefox 通過一個小提示更容易進行更新(用戶帳戶控制)
頁面源代碼顯示行號
在 title 屬性中支持換行
支持 text-align-last CSS 屬性
Firefox 11
Firefox 11 發布于 2012 年 3 月 13 日。
Firefox 11 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
樣式編輯器(Style Editor) - 一個新的樣式表編輯器。訪問任意網頁,然后從 Web Developer 菜單選擇樣式編輯器(Style Editor)
"傾斜的" 3D 頁面結構視圖 - 檢查工具提供一個 "3D" 按鈕
支持 CSS text-size-adjust 屬性(控制移動設備文本大小,并在放大到一個網頁時顯示滾動條)
支持 outerHTML 屬性
Firefox 可以從 Google Chrome 遷移進書簽、歷史和 cookies
當查看源代碼時,HTML5 標簽可以正確地高亮顯示
文件可以存儲在 IndexedDB 中
移除 Websockets API 的 moz 前綴
Firefox 10
Firefox 10 發布于 2012 年 1 月 31 日。
Firefox 10 可以在 Windows、Mac OS X、Linux 和 Android 上運行。
新特性:
頁面檢查器(Page Inspector)/CSS 檢查器(CSS Inspector) - 讓開發人員檢查 HTML 和 CSS
暫存器(Scratchpad) - 為 JavaScript 開發人員高亮顯示語法的代碼編輯器
新的 3D 圖形處理能力和 WebGL 內容的反走樣
全屏 API - 使開發人員能夠創建全屏應用程序和游戲,傳送全屏視頻內容
支持 CSS 3D 轉換
Firefox 9
Firefox 9 發布于 2011 年 12 月 20 日。
Firefox 9 可以在 Windows、Mac OS X 和 Linux 上運行。
新特性:
增加了類型推理(Type Inference),改進了 JavaScript 性能(比 Firefox 8 快了 30%)
針對 Mac OS X Lion 改進的主題整合
為 Mac OS X Lion 增加了兩個手指滑動導航
增加了通過 JavaScript 查詢 "不跟蹤" 狀態的支持
增加了對 CSS3 font-stretch 的支持
改進了對 HTML5、MathML 和 CSS 的支持
Firefox 8
Firefox 8 發布于 2011 年 11 月 8 日。
Firefox 8 可以在 Windows、Mac OS X 和 Linux 上運行。
新特性:
默認情況下安裝 Twitter 搜索引擎
默認情況下禁用第三方插件
一個新的 "附加組件選擇對話框",允許在升級時驗證插件
標簽可 "在需求時" 被加載,讓它更快地存儲帶有多個標簽的窗口
支持跨域資源共享(CORS,Cross-Origin Resource Sharing),讓開發者以一種安全的方式從其他域加載 WebGL 紋理
HTML5 上下文菜單支持
用于 Android 的 Firefox:Mozilla 也添加了更多的功能,以便 Firefox 瀏覽器能運行在 Android 設備上
Firefox 7
Firefox 7 發布于 2011 年 9 月 27 日。
Firefox 7 可以在 Windows、Mac OS X 和 Linux 上運行。
新特性:
改進的內存處理
當使用 Firefox 同步時,書簽和密碼更改總是即時同步。
"http://" URL 前綴默認情況下是隱藏的(就像 Chrome 一樣)
把 WebSocket 協議從版本 7 更新到版本 8
為用戶添加一個系統來把性能數據發送回 Mozilla
Firefox 6
Firefox 6 發布于 2011 年 8 月 16 日。
Firefox 6 可以在 Windows、Mac OS X 和 Linux 上運行。
新特性:
地址欄會高亮顯示您所訪問的網站的域
流線型的站點標識塊外觀
通過一個前綴的 API,增加了對 WebSockets 最新草案版本的支持。
增加了對 EventSource / server-sent 事件的支持
增加了對 window.matchMedia 的支持
增加了 Scratchpad,一個交互式的 JavaScript 原型環境
增加了一個新的 Web Developer 菜單項,移動相關開發項到其中
提高 Web 控制臺(Web Console)的可用性
提高 Firefox 同步的發現能力
當使用全景圖(Panorama)時,減少瀏覽器的啟動時間。
Firefox 5
Firefox 5 發布于 2011 年 6 月。
Firefox 5 可以在 Windows、Mac OS X 和 Linux 上運行。
新特性:
添加 CSS 動畫支持
調諧 HTTP 空閑連接邏輯以提高性能
改進的畫布(canvas)、JavaScript、內存和網絡性能
改進支持 HTML5、XHR、MathML、SMIL 和畫布(canvas)的標準。
改進的拼寫檢查
為 Linux 用戶改進桌面環境的整合
WebGL 內容不再加載跨域的紋理(textures)
背景標簽限制了 setTimeout 和 setInterval 為 1000ms,以便提高性能
Firefox 4
Firefox 4 發布于 2011 年 3 月。
Firefox 4 可以在 Windows、Mac OS X 和 Linux 上運行。
新特性:
支持超過 80 種語言!
曾經最快的 Firefox - Firefox 比以前發布的版本的速度快了六倍。
應用程序標簽 - 一個永久的主頁,顯示經常訪問的站點,比如 Web 郵件、Twitter、Pandora、Flickr。
切換到標簽 - 很容易地找到并切換到 Awesome Bar 上的任意打開的標簽。
展開圖(Panorama) - 拖放標簽到可管理組以便在導航多個打開的標簽時節省時間。
Firefox 同步 - 跨多臺計算機和移動設備訪問您的 Awesome Bar 歷史、書簽、打開的標簽、密碼和數據。
新的附加組件管理器 - 超過 200,000 個附加組件,可用于定制 Firefox 的特性、功能和外觀。
不跟蹤 - 允許用戶選擇退出用于行為廣告的跟蹤。
隱私第一 - 防止其他人訪問您的瀏覽器的歷史。
HTTP 嚴格的安全運輸(HSTS,HTTP Strict Transport Security) - 建立安全連接來停止 "中間人" 的攻擊,從而保護敏感數據的安全。
內容安全策略(CSP,Content Security Policy) - 通過允許網站明確告訴瀏覽器哪些內容是合法的,來防止交叉腳本的攻擊。
JIT 編譯器 - 隨著增強現有的 TraceMonkey JIT 和 SpiderMonkey 的解釋器,獲得更快的頁面加載速度和更好的性能。
HTML5 支持 - 包括硬件加速、高清視頻(WebM)、3D 圖形、離線數據存儲、專業排版、觸摸屏界面和 Mozilla Audio API。
改進了現有的工具 - 比如 CSS、畫布(Canvas)和 SVG。
不間斷的瀏覽 - 在 Adobe Flash、Apple QuickTime 或 Microsoft Silverlight 插件崩潰時,不間斷用戶的瀏覽。
Firefox 3.6
Firefox 3.6 發布于 2011 年 1 月。
Firefox 3.6 是建立在 Mozilla 的 Gecko 1.9.2 網頁渲染平臺上,該平臺自 2009 年初開始開發,為 Web 開發人員、插件開發者及用戶包含了許多改進功能,這個版本也比以前的版本更快,更具響應性,且已經進行優化,可運行在小型設備操作系統上,比如 Maemo。
新特性:
人物角色的主題 - 允許用戶通過單擊改變 Firefox 的外觀
防止安裝過時的插件 - 當用戶瀏覽網頁時,保證用戶安全
打開本地視頻可以全屏顯示,支持公告框架
改進的 JavaScript 性能
為 Web 開發者提供異步運行腳本的能力 - 為了加快頁面加載時間
支持可下載的 Web 字體 - 使用新的 WOFF 字體格式
改進對 CSS3、DOM 和 HTML5 的支持
更舊的 Firefox 版本
Firefox 3.5 - 發布于 2009 年 6 月。
Firefox 3.0 - 發布于 2008 年 6 月。
Firefox 2.0 - 發布于 2006 年 12 月。
Firefox 1.5 - 發布于 2005 年 11 月。
Firefox 1.0 - 發布于 2004 年 11 月。
Firefox 資源
Firefox 的支持站點
Firefox 的支持站點包括了可搜索知識庫、下載中心、產品 FAQ 以及輔助支持目錄。
ozilla Firefox 108現在可以下載了,這是2022年最后一個Firefox網絡瀏覽器的主版本。在明天Firefox 108.0正式亮相之前,Firefox的安裝文件剛剛在官網現身。Firefox 108對終端用戶來說并不特別令人興奮,但包含了一些開發者期待的新增功能。
Mozilla Firefox 108 的一些亮點包括:
- 導入地圖特性現在默認啟用,允許網頁控制JavaScript導入的行為。
- Firefox現在可以正確處理使用ICCv4配置文件進行顏色校正的圖像。
- Shift + Esc鍵盤快捷鍵現在可以打開進程管理器,以識別消耗太多資源的進程。
- 支持安全環境下的WebMIDI API。
- 支持CSS三角函數sin、cos、tan、asin、acos、atan和atan2,但目前是隱藏在一個偏好選項標記后面。
您現在就可以在官網FTP下載最新版本:
http://ftp.mozilla.org/pub/firefox/releases/108.0/
*請認真填寫需求信息,我們會在24小時內與您取得聯系。