jQuery 3.4.0 發佈!全力準備 jQuery 4.0

原創整理:前端大全(id:FrontDev)html

4 月 10 日,jQuery 官博發文宣告 jQuery 3.4.0 正式發佈。距離 2018 年 1 月發佈 v 3.3.0 版已有一年多了。前端

jQuery 官方表示,這是 3.x 系列的最後一個版本,他們將全力準備 jQuery 4.0。jquery

jQuery 3.4.0 發佈!全力準備 jQuery 4.0

jQuery 3.4.0 的部分亮點以下:ios

一、提高 .width 和 .height 的性能瀏覽器

在獲取和設置維度時,在某些狀況下可能會致使佈局抖動,這基本上意味着瀏覽器計算佈局的次數超出了必要的次數。除了 IE 瀏覽器,jQuery 在其餘瀏覽器中都修正了這個問題。app

二、支持 nonce 和 nomoduleide

爲了支持經過 .html 和 .append 等方法添加腳本元素,jQuery 將它們分離,並添加新的腳本標記來加載和執行遠程內容。在這個過程當中,nonce 和 nomodule 等屬性在之前版本中被忽略,但 jQuery 3.4.0 如今支持了。佈局

三、Radio 元素:事件處理程序中的預期狀態性能

複選框的相同問題此前早就修復了,但漏了 Radio。在下面的示例中,在第一次單擊元素時記錄 true。code

var $radios = jQuery(".example");
var $firstRadio = $radios.first();
var firstCheckedState = $firstRadio.prop("checked");
$radio.on("click", function() {
  // true in <3.4.0
  console.log($firstRadio.prop("checked") === firstCheckedState);
});
$radios.eq(1).click();

此次修正了,在執行事件處理程序以前更新 checked 屬性。

四、廢棄了一些位置選擇器和 Sizzle

jQuery 的基本 API 是選擇一些對象,而後對所選對象執行一些操做。Sizzle 是 jQuery 的選擇器引擎,快速高效。Sizzle 爲諸如 querySelectorAll 的原生選擇器 API,以及其餘 JS 和 CSS 的選擇器鋪平了道路。

現在,這些選擇器中的許多已經集成到了現代瀏覽器,是時候和 Sizzle 說再見了。

可是爲了在 jQuery 4.0 中消除 Sizzle,咱們還須要刪除咱們所說的位置選擇器,它們是非標準選擇器。

jQuery 3.4.0 刪除的選擇器包括:first、:last、:eq、:even、:odd、:lt、:gt 和 :nth。

更多詳情,請參見:

http://blog.jquery.com/2019/04/10/jquery-3-4-0-released/

相關文章
相關標籤/搜索