FastComments.com Blog
Wed Aug 09 2023
...

Ажурирање менија коментара

! Овај чланак садржи технички жаргон

Шта је ново

Неки корисници FastComments прилагођавају виџет за коментаре. Ово ствара уговарање између ваших прилагођавања и наше имплементације. Трудимо се да не нарушимо тај уговор, али у оквиру овог саопштења имамо мало нарушавајућу промену.

За програмере

CSS селектор за мени коментара је измењен.

Старо:

.comment .menu .menu-content

Ново:

.menu-content

Постојећи корисници

Ако већ користите селектор „menu-content“ – честитамо! Прегледали смо све наше кориснике који користе овај селектор и ажурирали њихове конфигурације виџета како бисмо спречили проблеме.

Јавите нам ако имате било каквих проблема.

Разлог

Од када је виџет за коментаре направљен, мени коментара је био чисто CSS‑управљан падајући мени. Ово је једноставан, брз начин за имплементацију падајућег менија који такође не захтева много кода – дизајнерски циљ FastComments.

Међутим, током година појавили су се проблеми.

На пример, када област коментара има одређену висину и може се скроловати, као у Streaming Chat‑у, приступ менију на дну је тежак јер ће мени покушати да изађе изван скроловачке области. Ово чини део менија невидљивим и захтева да померите миш и поново пређете преко менија да бисте урадили оно што сте желели. Осећали смо да је то фрустрирајуће.

Неки привремени решења су направљена, као што је окретање смера менија горе, али то такође не функционише ако висина виџета није довољно велика и у менију има много ставки – као за администраторе. У том случају би било идеално да се мени спусти испод скроловачке области.

Предности у величини

Једна предност ове промене је што смо успели да апстрахујемо велики део кода у асинхроно учитавајући модул. Ово ће нам омогућити да проширимо радње које можете извршити над подацима коментара без да почетно учитавање виџета постане оптерећено. Ово уводи мрежни позив први пут када пређете мишем преко менија за уређивање, али почетни пакет је врло мали (< 1kb) па то не би требало да буде приметно.

Веома је тешко наставити да се софтвер развија и истовремено смањује његову величину током времена. Обично софтвер почиње брзо, а затим постаје спор. Зато смо увек срећни што можемо да смањимо величину FastComments:

Before: 28.76kb gzipped (108.02kb total)
After: 28.39kb gzipped (105.79kb total)

Мање кода такође значи мање кода за ваш прегледач да парсира приликом учитавања странице. Утицај овога ће се повећати како се додају нове функције.

Предности у перформансама

Стари мени је рендеровао све ставке менија и учитавао све екстензије да види да ли екстензије имају ставке за додавање, и такође их рендеровао – за сваки коментар – како би садржај био спреман за ваш миш.

Обично има само 30‑100 објеката, па то обично није велики проблем, али утицај је растео. Нови систем уклања овај проблем јер се мени сада рендерује само по захтеву.

Компромис је у томе што се нови мени позиционира и рендерује помоћу JS‑а да би се постигло оно што желимо. Наставићемо да га оптимизујемо колико можемо, али тренутно ради добро.

У закључку

Хвала нашим корисницима на стрпљењу током увођења ових промена. Надамо се да и даље волите FastComments.

Поздрав!