Hotlst.biz покращує завантаження скриптів: відмова від $.getScript
Команда Hotlst.biz оптимізувала роботу JavaScript на платформі, замінивши $.getScript на динамічне створення елементів <script> за допомогою чистого JavaScript.
Раніше скрипт підвантажувався так:
Code: JavaScript
$(function(){
if ($(".hotengine-shop-products-add-count-spinner").length){
if(typeof $hotengine_shop_product_count_spinner == "undefined"){
$.getScript("/templates/scripts/hotengine-script-shop-product-count-spinner.js?v33").fail(function(jqxhr, settings, exception) { console.error("Failed to load script: ", exception);
});
}
}
});
Тепер використовується інший підхід:
Code: JavaScript
$(function(){
if ($(".hotengine-shop-products-add-count-spinner").length){
if (typeof $hotengine_shop_product_count_spinner == "undefined"){
const s = document.createElement("script");
s.async = true;
s.src = "/templates/scripts/hotengine-script-shop-product-count-spinner.js?v34";
s.onerror = (e) => { console.error(`Failed to load script: ${s.src}`, e); };
document.head.appendChild(s);
}
}
});
Чому це рекомендується:
- Не потрібен jQuery, менше залежностей.
- Контроль повторного завантаження: скрипт вставляється лише один раз.
- Асинхронне завантаження покращує продуктивність без блокування сторінки.
- Просте та передбачуване оброблення помилок через
onerror. - Код більш сучасний та сумісний з чистим JavaScript.