ÐаванÑажÑе зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð· колбеком
ÐазвиÑай зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð°Ð½ÑажÑÑÑÑÑÑ Ð¿Ñд ÑÐ°Ñ ÑÑ
ÑÑвоÑеннÑ. ТомÑ, коли ми додаÑмо <img> на ÑÑоÑÑнкÑ, коÑиÑÑÑÐ²Ð°Ñ Ð½Ðµ вÑдÑÐ°Ð·Ñ Ð±Ð°ÑиÑÑ Ð·Ð¾Ð±ÑаженнÑ. СпоÑаÑÐºÑ Ð¹Ð¾Ð³Ð¾ поÑÑÑбно заванÑажиÑи бÑаÑзеÑÑ.
Щоб вÑдÑÐ°Ð·Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°Ñи зобÑаженнÑ, ми можемо ÑÑвоÑиÑи його âзаздалегÑдÑâ, напÑиклад:
let img = document.createElement('img');
img.src = 'my.jpg';
ÐÑаÑÐ·ÐµÑ Ð¿Ð¾ÑÐ¸Ð½Ð°Ñ Ð·Ð°Ð²Ð°Ð½ÑажÑваÑи зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ñ Ð·Ð°Ð¿Ð°Ð¼âÑÑовÑÑ Ð¹Ð¾Ð³Ð¾ в кеÑÑ. ÐÑзнÑÑе, коли Ñе Ñаме зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð·âÑвлÑÑÑÑÑÑ Ð² докÑменÑÑ (незалежно вÑд Ñого, Ñк), воно зâÑвлÑÑÑÑÑÑ Ð½ÐµÐ³Ð°Ð¹Ð½Ð¾.
СÑвоÑÑÑÑ ÑÑнкÑÑÑ preloadImages(sources, callback), Ñка заванÑажÑÑ Ð²ÑÑ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð· маÑÐ¸Ð²Ñ sources Ñ, коли бÑде гоÑова, запÑÑÐºÐ°Ñ callback.
ÐапÑиклад, пÑÑÐ»Ñ Ð·Ð°Ð²Ð°Ð½ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ñ Ð±Ñде вÑдобÑажаÑиÑÑ alert:
function loaded() {
alert("ÐобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð°Ð½ÑаженÑ")
}
preloadImages(["1.jpg", "2.jpg", "3.jpg"], loaded);
У ÑÐ°Ð·Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸ ÑÑнкÑÑÑ Ð²Ñе одно повинна вважаÑи каÑÑÐ¸Ð½ÐºÑ âзаванÑаженоÑâ.
ÐнÑими Ñловами, callback виконÑÑÑÑÑÑ, коли вÑÑ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð°Ð½ÑажÑÑÑÑÑÑ Ð°Ð±Ð¾ Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°.
Ð¦Ñ ÑÑнкÑÑÑ ÐºÐ¾ÑиÑна, напÑиклад, коли ми планÑÑмо показаÑи галеÑÐµÑ Ð· Ð²ÐµÐ»Ð¸ÐºÐ¾Ñ ÐºÑлÑкÑÑÑÑ Ð·Ð¾Ð±ÑаженÑ, ÑÐºÑ Ð¼Ð¾Ð¶Ð½Ð° пÑокÑÑÑÑваÑи, Ñ Ñ Ð¾Ñемо бÑÑи впевненими, Ñо вÑÑ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð°Ð½ÑаженÑ.
У виÑ
ÑÐ´Ð½Ð¾Ð¼Ñ Ð´Ð¾ÐºÑменÑÑ Ð²Ð¸ можеÑе знайÑи поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ð° ÑеÑÑÐ¾Ð²Ñ Ð·Ð¾Ð±ÑаженнÑ, а Ñакож код, Ñоб пеÑевÑÑиÑи, заванÑÐ°Ð¶ÐµÐ½Ñ Ð²Ð¾Ð½Ð¸ Ñи нÑ. ÐÑн Ð¼Ð°Ñ Ð²Ð¸Ð²ÐµÑÑи 300.
ÐÑдкÑиÑи пÑÑоÑниÑÑ Ð´Ð»Ñ Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ.
ÐлгоÑиÑм:
- ÐÑобÑÑÑ
imgÐ´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ джеÑела. - ÐодайÑе
onload/onerrorÐ´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ зобÑаженнÑ. - ÐбÑлÑÑÑе лÑÑилÑник, коли ÑпÑаÑÑовÑÑ
onloadабоonerror. - Ðоли знаÑÐµÐ½Ð½Ñ Ð»ÑÑилÑника доÑÑвнÑÑ ÐºÑлÑкоÑÑÑ Ð´Ð¶ÐµÑел, ми закÑнÑили:
callback().
