قورال قوراللىرى سىزدە بار بولغان ئەڭ كىچىك UI مەسىلىسىدەك ھېس قىلىدۇ. ئۇلار كىچىك ھەم ئادەتتە يوشۇرۇن. بەزىلەر قانداق قۇرۇشنى سورىغاندا ، ئەنئەنىۋى جاۋاب دائىم دېگۈدەك بىر قىسىم JavaScript كۈتۈپخانىسىنى ئىشلىتىپ قايتىپ كېلىدۇ. ئۇزاقتىن بۇيان ، بۇ ئاقىلانە مەسلىھەت ئىدى. مەنمۇ ئۇنىڭغا ئەگەشتىم. سىرتقى كۆرۈنۈشتە ، قورال قوراللىرى ئاددىي. مەلۇم بىر ئېلېمېنتنى يۆتكەڭ ياكى مەركەزلەشتۈرۈڭ ، بەزى تېكىستلەر بىلەن كىچىك قۇتىنى كۆرسىتىڭ ، ئاندىن ئىشلەتكۈچى يىراقلاشقاندا ئۇنى يوشۇرۇڭ. ئەمما ھەقىقىي ئىشلەتكۈچىلەرگە بىرنى ئەۋەتسىڭىز ، قىرلىرى كۆرۈنۈشكە باشلايدۇ. كۇنۇپكا تاختىسى ئىشلەتكۈچىلەر Tab نى قوزغىتىدۇ ، ئەمما قورال قوراللىرىنى ھەرگىز كۆرمەيدۇ. ئېكران ئوقۇرمەنلىرى ئۇنى ئىككى قېتىم ئېلان قىلىدۇ ، ياكى ھەرگىز بولمايدۇ. چاشقىنەكنى بەك تېز يۆتكىگەندە قورال قوراللىرى لەپىلدەپ تۇرىدۇ. ئۇ كىچىك ئېكرانلاردىكى مەزمۇنلارنى قاپلايدۇ. Esc نى باسسىڭىز ئۇنى تاقىمايدۇ. فوكۇس يوقىلىدۇ. ۋاقىتنىڭ ئۆتۈشىگە ئەگىشىپ ، مېنىڭ قورال كودى مېنىڭ ھەقىقىي ئىگىدارچىلىق قىلىشنى خالىمايدىغان نەرسىگە ئايلاندى. پائالىيەت ئاڭلىغۇچىلار دۆۋىلىنىپ كەتتى. يۆتكىلىش ۋە فوكۇسنى ئايرىم بىر تەرەپ قىلىش كېرەك ئىدى. سىرتتا چېكىش ئالاھىدە ئەھۋاللارغا ئېھتىياجلىق. ARIA خاسلىقى قولدا ماس قەدەمدە ساقلىنىشى كېرەك ئىدى. ھەر بىر كىچىك ئوڭشاش يەنە بىر قەۋەت لوگىكا قوشتى. كۈتۈپخانىلار ياردەم قىلدى ، ئەمما ئۇلارمۇ پەردە ئارقىسىدا نېمە ئىش بولغانلىقىنى تولۇق چۈشىنىشنىڭ ئورنىغا ، مەن ئىشلىگەن قارا قۇتىلارغا ئوخشايتتى. بۇ مېنى يېڭى Popover API نى كۆرۈشكە ئۈندىدى. ئەگەر كۇتۇپخانىنىڭ ياردىمىسىز توركۆرگۈچنىڭ يەرلىك مودېلىنى ئىشلىتىپ بىر قورال قورالنى قايتا قۇرسام نېمە ئىشلارنىڭ يۈز بېرىدىغانلىقىنى كۆرگۈم كەلدى. باشلىغاندا ، دىققەت قىلىشقا ئەرزىيدىغىنى شۇكى ، ھەر قانداق يېڭى ئىقتىدارغا ئوخشاش ، ئۇنىڭدا بەزى ئىشلار يەنىلا دەزماللىنىۋاتىدۇ. دېمەك ، ئومۇمىي API غا ئېقىۋاتقان بىر قانچە پارچە بولسىمۇ ، ئۇ ھازىر توركۆرگۈچنىڭ قوللىشىغا ئېرىشتى. بۇ ئارىلىقتا كانيۇسنى كۆزىتىپ تۇرۇشقا ئەرزىيدۇ. «كونا» قورال قوراللىرى Popover API دىن بۇرۇن ، قورال ئامبىرىنى ئىشلىتىش تېزلەتمە ئەمەس ئىدى. بۇ سۈكۈتتىكى ھالەتتە. توركۆرگۈچلەردە چاشقىنەك ، كۇنۇپكا تاختىسى ۋە ياردەمچى تېخنىكىلاردا ئىشلەيدىغان قورال قوراللىرى ھەققىدە يەرلىك ئۇقۇم يوق. ئەگەر سىز توغرا بولۇشقا كۆڭۈل بۆلسىڭىز ، سىزنىڭ بىردىنبىر تاللىشىڭىز كۇتۇپخانا ئىشلىتىش ئىدى ، بۇ مېنىڭ قىلغان ئىشىم. يۇقىرى سەۋىيىدە ، ئەندىزە ھەمىشە ئوخشاش ئىدى: قوزغىتىش ئېلېمېنتى ، يوشۇرۇن قورال ئېلېمېنتى ۋە JavaScript بۇ ئىككىسىنى ماسلاشتۇرىدۇ.

كۈتۈپخانىدا ئېلېمېنتنىڭ ئايلىنىش ياكى فوكۇس توغرىلاش ، تۇتۇق ياكى چاشقىنەكنىڭ يوچۇقىغا يوشۇرۇنۇش ۋە سىيرىلما ئورنىنىڭ چوڭ-كىچىكلىكىنى ئۆزگەرتىشكە بولىدىغان سىم سىم بىر تەرەپ قىلىندى.

ۋاقىتنىڭ ئۆتىشىگە ئەگىشىپ ، قورال قوراللىرى نازۇك بولۇپ قېلىشى مۇمكىن. كىچىك ئۆزگىرىشلەر خەتەر ئېلىپ كەلدى. كىچىككىنە ئوڭشاش چېكىنىشنى كەلتۈرۈپ چىقاردى. تېخىمۇ چاتاق يېرى ، يېڭى قورال قوراللىرىنى قوشۇش ئوخشاش مۇرەككەپلىككە ۋارىسلىق قىلدى. ئىشلار تېخنىكىلىق ئىشلىدى ، ئەمما ئەزەلدىن مۇقىم ياكى تولۇق ھېس قىلمىدى. مەن توركۆرگۈنىڭ يەرلىك Popover API ئارقىلىق قورال قوراللىرىنى قايتا قۇرۇشنى قارار قىلغىنىمدا بۇ ئەھۋال ئىدى. مەن Popover API نى سىناپ باققان پەيت مەن يېڭى نەرسىلەرنى سىناق قىلىپ باقماقچى بولغانلىقىم ئۈچۈن Popover API نى ئىشلىتىشكە ئۆزگەرمىدىم. مەن توركۆرگۈ ئاللىقاچان چۈشىنىشى كېرەك دەپ قارىغان قورال قورال ھەرىكىتىنى ساقلاپ زېرىككەنلىكىم ئۈچۈن ئالماشتۇردۇم. مەن دەسلەپتە گۇمانلاندىم. كۆپىنچە يېڭى تور API لىرى ئاددىيلىقنى ۋەدە قىلىدۇ ، ئەمما يەنىلا سىز قاچماقچى بولغان مۇرەككەپلىكنى جىمجىت ھالدا ئەسلىگە كەلتۈرىدىغان يېلىم ، گىرۋەكنى بىر تەرەپ قىلىش ياكى خاتالىق لوگىكىسىنى تەلەپ قىلىدۇ. شۇڭا ، مەن ئەڭ كىچىك ئۇسۇلدا Popover API نى سىناپ باقتىم. تۆۋەندىكىسى:

غا ئۇلىنىدۇ <كۇنۇپكا popovertarget = "tip-1">?

بۇ كۇنۇپكا پايدىلىق تەكلىپنى قوزغىتىدۇ.

1. كۇنۇپكا تاختىسى «پەقەت ئىشلەيدۇ» كونۇپكا تاختىسىنى قوللاش بىر نەچچە قەۋەتنىڭ توغرا تىزىلىشىغا باغلىق: فوكۇس قورال قورالنى قوزغىتىشقا مەجبۇر بولدى ، تۇتۇق ئۇنى يوشۇرۇشقا مەجبۇر بولدى ، Esc قولدا سىم بىلەن ئۇلىنىشى كېرەك ، ۋاقىت مۇھىم. ئەگەر سىز بىر گىرۋەك قېپىنى قولدىن بېرىپ قويغان بولسىڭىز ، قورال قوراللىرى بەك ئۇزۇن ئوچۇق ھالەتتە ياكى ئوقۇشتىن بۇرۇن غايىب بولىدۇ. ئاپتوماتىك ياكى قولدا تەڭشەلگەن popover خاسلىقى بىلەن توركۆرگۈچ ئاساسنى ئىگىلىدى: Tab ۋە Shift + Tab نورمال ھەرىكەت قىلىدۇ ، Esc ھەر قېتىم قورال قوراللىرىنى تاقايدۇ ، قوشۇمچە ئاڭلىغۇچىلار تەلەپ قىلىنمايدۇ.

پايدىلىق چۈشەندۈرۈش

مېنىڭ كود ساندۇقىمدىن غايىب بولغىنى يەرشارى كۇنۇپكا تاختىسىنى بىر تەرەپ قىلىش ، Esc مەخسۇس تازىلاش لوگىكىسى ۋە كۇنۇپكا تاختىسى يول باشلاش جەريانىدا دۆلەت تەكشۈرۈشى. كۇنۇپكا تاختىسى تەجرىبىسى مەن ساقلاشقا تېگىشلىك بىر نەرسە بولۇشتىن توختىدى ، ئۇ توركۆرگۈچنىڭ كاپالىتىگە ئايلاندى. 2. ئېكران ئوقۇغۇچنىڭ ئالدىن پەرەز قىلىشچانلىقى بۇئەڭ چوڭ ياخشىلىنىش. ئېھتىياتچانلىق بىلەن ARIA خىزمىتى بىلەنمۇ ، مەن يۇقىرىدا بايان قىلغىنىمدەك ھەرىكەتمۇ ھەر خىل بولدى. ھەر بىر كىچىك ئۆزگىرىش خەتەرلىك تۇيۇلدى. مۇۋاپىق رولغا ئىگە پوپايكىنى ئىشلىتىش يۈز بەرگەنگە قەدەر تېخىمۇ مۇقىم ۋە ئالدىن پەرەز قىلغىلى بولىدۇ.

پايدىلىق چۈشەندۈرۈش

بۇ يەردە يەنە بىر غەلىبە بار: ئالماشتۇرۇشتىن كېيىن ، ماياك ئۆز-ئارا تەسىر كۆرسىتىش ئۈچۈن خاتا بولغان ARIA دۆلەت ئاگاھلاندۇرۇشىنى بايراق چىقىرىشنى توختاتتى ، بۇنىڭ سەۋەبى مېنىڭ تاسادىپىي خاتالىق سادىر قىلىدىغان ARIA شتاتلىرى يوق.

3. فوكۇس باشقۇرۇش فوكۇس نازۇك ئىدى. ئىلگىرى ، مەندە مۇنداق قائىدىلەر بار ئىدى: فوكۇس قوزغاتقۇچ قورال كۆرسەتكۈچىنى كۆرسەتسۇن ، فوكۇسنى قورال قوراللىرىغا يۆتكەڭ ۋە يېقىنلاشماڭ ، بەك يېقىن بولغاندا قوزغاتقۇچنى قالايمىقانلاشتۇرۇڭ ، قورال قورالنى تاقاپ ، فوكۇسنى قولدا ئەسلىگە كەلتۈرۈڭ. بۇ ئىش بولغۇچە ئىشلىدى. Popover API ئارقىلىق توركۆرگۈچ تېخىمۇ ئاددىي مودېلنى يولغا قويىدۇ ، بۇ يەردە فوكۇس تېخىمۇ تەبىئىي ھالدا مودا ئېقىمىغا يۆتكىلىدۇ. مودا ئېقىمىنى تاقاش فوكۇسنى قوزغىتىشقا مەركەزلەشتۈرىدۇ ، كۆرۈنمەيدىغان فوكۇس تۇزىقى ياكى يوقىتىلغان فوكۇس پەيتلىرى يوق. ھەمدە فوكۇسنى ئەسلىگە كەلتۈرۈش كودىنى قوشمىدىم. ئۇنى ئېلىۋەتتىم.

خۇلاسە Popover API دېگىنىمىز قورال قوراللىرى سىز تەقلىد قىلغان نەرسە ئەمەس. ئۇلار توركۆرگۈ چۈشىنىدىغان نەرسە. ئېچىش ، تاقاش ، كۇنۇپكا تاختىسى ھەرىكىتى ، قېچىش بىر تەرەپ قىلىش ۋە زور بىر تۈركۈم زىيارەت قىلىش ئىقتىدارلىرى مەخسۇس JavaScript دىن ئەمەس ، بەلكى سۇپىنىڭ ئۆزىدىن كەلگەن. بۇ قورال ئامبىرى كۈتۈپخانىلىرىنىڭ كونىراپ كەتكەنلىكىدىن دېرەك بەرمەيدۇ ، چۈنكى ئۇلار يەنىلا مۇرەككەپ لايىھىلەش سىستېمىسى ، ئېغىر دەرىجىدە خاسلاشتۇرۇش ياكى مىراس چەكلىمىسى ئۈچۈن ئەقىلگە مۇۋاپىق ، ئەمما سۈكۈتتىكى ھالەت ئۆزگەردى. تۇنجى قېتىم ئەڭ ئاددىي قورال كۆرسەتكۈچىمۇ ئەڭ توغرا قورال بولالايدۇ. ئەگەر قىزىقسىڭىز ، بۇ سىناقنى سىناپ بېقىڭ: مەھسۇلاتىڭىزدىكى پەقەت بىرلا قورال قورالىنى Popover API غا ئالماشتۇرۇڭ ، ھەممە نەرسىنى قايتا يازماڭ ، پۈتكۈل سىستېمىنى كۆچۈرمەڭ ، پەقەت بىرنى تاللاڭ ۋە كودىڭىزدا نېمە يوقاپ كەتكەنلىكىنى كۆرۈڭ. بۇ سۇپا سىزگە تېخىمۇ ياخشى ئىپتىدائىي نەرسە ئاتا قىلغاندا ، غەلىبە پەقەت JavaScript نىڭ قۇرلىرى بولۇپلا قالماستىن ، بەلكى سىز ئەنسىرەيدىغان ئىشلارمۇ ئاز. مېنىڭ GitHub ئامبىرىمدىكى تولۇق كودنى تەكشۈرۈپ بېقىڭ. داۋاملىق ئوقۇش پوپايكا ۋە مۇناسىۋەتلىك API لارغا چوڭقۇر چۆكۈش ئۈچۈن:

«پوپپىن» ، گېف گراخام زېل لىۋ: «پوپلار بىلەن دىئالوگ ئوتتۇرىسىدىكى مۇناسىۋەتنى ئايدىڭلاشتۇرۇش» Una Kravets: «popover = بېشارەت دېگەن نېمە؟» «دەۋەتچىلەر بۇيرۇقلىرى» ، دانىيال شىۋارىز Preethi: «HTML Popover ئارقىلىق ئاپتوماتىك تاقاش ئۇقتۇرۇشى قۇرۇش» UI Popover API چۈشەندۈرگۈچىنى ئېچىڭ «پوپ (ئۈستى) شار» ، جون رېيا «CSS لەڭگەر ئورنى» ، خۇان دىياگو رودرىگۇز

MDN يەنە Popover API ئۈچۈن ئەتراپلىق تېخنىكىلىق ھۆججەتلەرنى تەمىنلەيدۇ.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free