Chrome 瀏覽器雖然已經問世六年,但在版本號上卻正迅速步入成熟期。 Chrome 39 現已發布,您可能已經安裝了它。此版本包含一些不錯的全新功能……以及一兩個略顯可疑的補充。
生成器是使用 function*
聲明的特殊函數,用於創建迭代器。迭代器是一個具有 next()
方法的對象,調用該方法以返回一個值。生成器函數使用 yield
語句提供序列中的下一個值。
Arunoda Susiripala 在《JavaScript 生成器和防止回調地獄》中提供了一個基本的示例:
function* HelloGen() { yield 100; yield 400; } var gen = HelloGen(); console.log(gen.next()); // {value: 100, done: false} console.log(gen.next()); // {value: 400, done: false} console.log(gen.next()); // {value: undefined, done: true}
Chrome、Opera 和 Firefox 31 均支持 ECMAScript 6 生成器。
新的 Beacon API 允許您將數據發送到服務器,而無需等待響應。請求會被排隊,瀏覽器會在第一時間發送這些請求,但重要的是——它不會延遲當前頁面的卸載或下一頁面的加載。
navigator.sendBeacon()
會接收一個 URL 和數據(可能是字符串或 FormData 值)。通常,它可用於傳輸統計信息,例如:
navigator.sendBeacon('/log', 'page-unloaded');
如果瀏覽器成功排隊了 Beacon 請求,則該方法返回 true
。我不確定如果返回 false
可以做什麼,但 Beacon 不應用於基本功能或消息傳遞。
Chrome、Opera 和 Firefox 31 均支持 Beacon API。
Web 動畫已在 Chrome 36 中推出。其理念是允許從 JavaScript 中進行簡單的類似 CSS3 的關鍵幀和動畫聲明,例如:
var myanimation = myelement.animate([ { color: "#f00" }, { left: "20em" }, { transform: "rotate(180deg)" } ], { duration: 1000, iterations: 1, delay: 0 });
其優勢在於,您可以根據用戶輸入或其他條件控制和同步播放。 Chrome 39 添加了播放方法,例如 play()
、pause()
、reverse()
、finish()
(將動畫置於其最終狀態)和 cancel()
(清除所有效果)。
可以將 Web 動畫視為簡單的 CSS3 動畫和使用 requestAnimationFrame
和您自己的計時函數的複雜 JavaScript 全幀控制之間的折衷方案。對於一般的網頁效果來說,它可能有點過分,但對於遊戲來說又不夠強大。應用程序和演示文稿可能是不錯的用例?
目前只有 Chrome 和 Opera 瀏覽器支持 Web 動畫。 Firefox nightly 版本中提供了支持,並且可以使用 polyfill,但該技術在一段時間內不會穩定。
不要與應用程序緩存清單混淆,Web 應用清單是一個 JSON 文件,您可以在其中放置元數據,例如名稱、起始地址、圖標、顯示模式、方向等。
您需要在 HTML 頭部添加一個鏈接:
<link rel="manifest" href="manifest.json">
以及清單文件本身,例如:
function* HelloGen() { yield 100; yield 400; } var gen = HelloGen(); console.log(gen.next()); // {value: 100, done: false} console.log(gen.next()); // {value: 400, done: false} console.log(gen.next()); // {value: undefined, done: true}
這最終意味著我們可以從每個頁面的頂部刪除 57 個 iOS 圖標大小的替代方案……假設 Apple 決定在 Safari 中實現這項技術!
跨瀏覽器支持參差不齊。 Firefox 將清單用於其市場,但屬性名稱似乎存在一些差異。
在 Windows 7 上切換到沉浸式模式會使 Chrome 的行為有點像 Windows 8 全屏 Metro 應用程序。奇怪的是,它會在 Windows 任務欄上方放置一個類似 Chrome OS 的半透明任務欄——帶有自己的開始按鈕和時鐘。
為什麼? 如果 Windows 7 用戶想要 Windows 8 體驗,他們可以升級。但是,許多 Windows 7 用戶選擇堅持使用該操作系統是有原因的:他們不想要 Windows 8!
我還對 Google 堅持將 Chrome OS 小部件偷偷添加到其他操作系統感到困惑。這里和那裡的 Chrome 應用圖標是可以的——但複製本機功能毫無意義。也許他們希望吸引人們使用 Chrome OS,但惹惱他們不會有幫助。
還有一些較小的功能……
scrollTop
和 scrollLeft
現在返回像素的分數。如果您認為像素完美很糟糕,請等待客戶開始要求亞像素完美! 儘管添加了一些有問題的功能,並且 Firefox 也趕上了部分功能,但 39 版本仍然是一個很棒的更新。 Chrome 仍然快速、穩定,並且是近一半網絡用戶的首選瀏覽器。推薦使用。
以上是什麼是Chrome 39中的新內容的詳細內容。更多資訊請關注PHP中文網其他相關文章!