@sanekk94

Асинхронная загрузка скриптов. Как вывести до загрузки скрипт?

Здравствуйте. Подскажите пожалуйста, как можно вывести инлайновые функции jQuery(кусок кода, где используется jquery),до загрузки самого jQuery(т.е до выполнения функции вызовов скриптов)?

Нужно вывести надпись примерно вот так, до выполнения вызова Jquery по счету в браузере.
<div class="#text"></div>
<script>$('#text').html('Привет мир!')</script>

var scr = {
    "scripts": [{
            "src": "catalog/view/javascript/libs.min.js",
            "async": false
        },
        {
            "src": "catalog/view/javascript/common.js",
            "async": false
        }
    ]
};
! function(t, n, r) {
    "use strict";
    var c = function(t) {
        if ("[object Array]" !== Object.prototype.toString.call(t)) return !1;
        for (var r = 0; r < t.length; r++) {
            var c = n.createElement("script"),
                e = t[r];
            c.src = e.src, c.async = e.async, n.body.appendChild(c)
        }
        return !0
    };
    t.addEventListener ? t.addEventListener("load", function() {
        c(r.scripts);
    }, !1) : t.attachEvent ? t.attachEvent("onload", function() {
        c(r.scripts)
    }) : t.onload = function() {
        c(r.scripts)
    }
}(window, document, scr);
  • Вопрос задан
  • 673 просмотра
Решения вопроса 1
@Pavelblog
Вариант 1: Сделать то что вам нужно без использования Jquery
Вариант 2: Дождаться загрузки JQuery и только после этого выполнить нужный код.

Я использую простую функцию с колбеком на загрузку файла. Ваша задача может быть решена так:
function loadScript( url, callback ){
	var elem = document.createElement('SCRIPT');
	elem.setAttribute('src',url);
	if( typeof callback == "function" ){
		elem.addEventListener('load', callback);
	}
	document.head.appendChild(elem);
}
loadScript('catalog/view/javascript/jquery.min.js', function(){
  $('#text').html('Привет мир!')
})
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
ThunderCat
@ThunderCat Куратор тега JavaScript
{PHP, MySql, HTML, JS, CSS} developer
вы поясните для чего такие извращения и возможно вам подскажут решение, а такой бред в стиле "как выпить молока без молока" писать не надо.
Ответ написан
Комментировать
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
Выполнить код jquery до загрузки jquery? Вы сами поняли что хотите?

Вам нужно в клуб "как надуть шарик, не надувая шарик", "как завязать узел, не имея веревки" и т.д.

Если надо выполнить что-то до загрузки jquery - пишите это на js
Ответ написан
Комментировать
@sanekk94 Автор вопроса
Сначала загружается страница с инлайновым кодом, после чего из кода в футере, подключаются асинхронно jquery и другие библиотеки. Как подключить асинхронно инлайновый код, чтобы он асинхронно подключался после библиотек из футера? Наверное я не понятно выразился тогда. Буду рад если сможете помочь, убил часов 7 на это.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы