Nowości w Chrome 128

Oto, co musisz wiedzieć na ten temat:

  • Wyświetlanie elementów <ruby> jest lepsze przy użyciu przerwy wiersza.
  • Promise.try ułatwia łączenie obietnic.
  • Zdarzenie PointerEvent zostało rozszerzone o możliwość jednoznacznej identyfikacji wielu piórków.
  • I to nie wszystko

Nazywam się Adriana Jara. Zobacz, co nowego w Chrome 128 dla deweloperów.

Line breakable <ruby>

Element <ruby> poprawia prezentację tekstu, zwłaszcza w przypadku języków azjatyckich. Umożliwia wyświetlanie adnotacji fonetycznych lub innych informacji dodatkowych nad tekstem podstawowym lub obok niego.

Element ruby składa się z 2 głównych części: podstawy, czyli głównego tekstu, oraz tekstu ruby, czyli tekstu adnotacji oznaczonego elementem.

Wcześniej, jeśli tekst w ramach tagów ruby-base lub ruby-text był dłuższy niż jedna linijka, był on dzielony na części, co powodowało problemy z układem.

Teraz można stosować łamanie wiersza w przypadku rubie, umieszczając tekst adnotacji rubie nad zawiniętym tekstem podstawowym, co zapewnia idealne renderowanie tekstu.

Aby zobaczyć przykłady i uzyskać więcej informacji, zapoznaj się z właściwością Line-breakable <ruby> i atrybutem CSS ruby-align.

Promise.try

Promise.try ułatwia obsługę błędów w obietnicach. Mamy tu funkcję f. Ta funkcja może być asynchroniczna i zwracać obietnicę lub nie. Aby w obu przypadkach używać semantyki obietnic do obsługi błędów, owiń funkcję w obietnicy.

Jednym ze sposobów na to jest użycie funkcji Promise.resolve().then(f), ale w tym przypadku funkcja f będzie niepotrzebnie wykonywana asynchronicznie w następnym kroku.

Aby uniknąć tego problemu, musisz użyć new Promise(resolve => resolve(f())), co nie jest w ogóle ergonomiczne.

Promise.try to prosty sposób na osiągnięcie tego samego. Umożliwia ono uruchomienie ciągu obiekcji, który przechwytuje wszystkie błędy w obsługach .catch zamiast obsługiwać zarówno synchroniczne, jak i asynkroniczną ścieżkę wyjątku.

Więcej informacji znajdziesz w dokumentacji Promise.try.

PointerEvent.deviceProperties do obsługi rysowania wieloma piórami

Deweloperzy nie mieli możliwości odróżnienia 2 różnych piór na tablecie graficznym z wbudowanym modułem do rysowania. Istniejący atrybut PointerEvent.pointerId jest implementowany na różne sposoby i nie zawsze jest trwały w przypadku każdego gestu lub interakcji z ekranem.

Interfejs PointerEvent został rozszerzony o nowy atrybut: deviceProperties. Zawiera atrybut uniqueId, który jest trwałym identyfikatorem sesji, izolowanym dokumentem i unikalnym identyfikatorem, którego deweloper może używać do identyfikowania poszczególnych piór wchodzących w interakcję ze stroną.

Dzięki tej zmianie możesz na przykład ustawić określone kolory lub kształty pióra dla każdego urządzenia współpracującego z digitalizerem.

Więcej informacji o tym, jak zacząć korzystać z wydarzeń związanych z wskaźnikiem, znajdziesz w artykule Wskazywanie kierunku rozwoju.

I inne funkcje

Oczywiście jest ich znacznie więcej.

  • Właściwość CSS zoom jest teraz zgodna z najnowszym standardem.

  • Błędy związane z tworzeniem i renderowaniem dźwięku w AudioContext są teraz zgłaszane za pomocą AudioContext.onerror.

  • Panel Animacje w DevTools umożliwia teraz rejestrowanie animacji i edytowanie @keyframes na żywo.

Przeczytaj pełne informacje o wersji

Więcej informacji

Ta lista zawiera tylko niektóre najważniejsze informacje. Aby dowiedzieć się więcej o dodatkowych zmianach w Chrome 128, kliknij te linki.

Subskrybuj

Aby być na bieżąco, zasubskrybuj kanał w YouTube dla programistów Chrome. Otrzymasz wtedy e-maila z powiadomieniem, gdy tylko opublikujemy nowy film.

Cześć, tu Adriana Jara. Gdy tylko pojawi się nowa wersja Chrome 128, opowiem Ci, co nowego w Chrome.