| 
	
	
		
		
			
			 
				Динамически загружаемая jQuery и jQuery-функции в одном файле
			 
			
		
		
		
		Здравствуйте! Помогите советом, пожалуйста. 
Мне необходимо подключить к странице один внешний js-файл, который будет: 
- проверять наличие jQuery на странице и если jQuery нет, то динамически подгружать либу 
- пока jQuery не загрузится, не исполнять никакой код из этого файла 
- после потверждения загрузки jQuery, исполнить нужные jQuery-функции. 
Вот что у меня вышло: 
 
load = function() { 
    //добавляем в хэд массив ссылок на внешние скрипты 
    load.getScript(); 
    //исполняем нужный код после загрузки jQuery 
    load.tryReady(0);  
} 
load.getScript = function() { 
    var filename = ["jquery.min.js", "jquery-ui.min.js"] 
    for (i=0;i<filename.length;i++) 
		{ 
		var fileref = document.createElement('script') 
		fileref.setAttribute("type","text/javascript") 
		fileref.setAttribute("src", filename[i]) 
		if (typeof fileref !="undefined") 
            {document.getElementsByTagName("head")[0].appendChild(fileref)} 
		} 
} 
load.tryReady = function(time_elapsed) { 
        //проверяем загрузку библиотеки   
        if (typeof $ == "undefined") { 
        if (time_elapsed <= 5000) { 
            setTimeout("load.tryReady(" + (time_elapsed + 200) + ")", 200); 
        }  
        else { 
            alert("jQuery незагружена") 
              } 
        } 
         else //библиотека уже загружена 
		{ 
		// тут наши функции на jQuery 
                } 
} 
load(); 
 
Функция рабочая, но из-за setTimeout() могут возникать проблемы, особенно когда вставляешь в эту функцию код нескольких плагинов. То работает, то не работает. Кто-нибудь можеть подсказать, как можно обойтись без setTimeout() для проверки, загрузилась ли jQuery или нет. 
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 |