javascript include
только начинаю программировать в JavaScript-е...поэтому не пинайте сильно. Решил организовать подключение "модулей", наподобие как в С++
<html>
<head>
<script type="text/javascript" src="JS/js_env.js"></script>
</head>
<body>
<script>
JEnv.include("JS/dLite.js");
JEnv.include("JS/CImage.js");
</script>
<img src="img/bubi.gif" id="bubi"/>
<script>
var otest = dLite.elm('bubi');
var i1 = new CImage(otest);
i1.SetObject(otest);
</script>
</body>
</html>
js_env.js если заремлен то ф-ция include не работает Exception: CObject is not defined File: .....JS/CImage.js , как только убранно заремлевание..."модули подгружаются"
var JEnv = function () {
return {
init : function () {
window._JEnv = 1;
},
include : function(script_filename) {
var html_doc = document.getElementsByTagName('head').item(0);
var js = document.createElement('script');
js.setAttribute('language', 'javascript');
js.setAttribute('type', 'text/javascript');
js.setAttribute('src', script_filename);
html_doc.appendChild(js);
// alert(js.toString()); - если заремлен то ф-ция include не работает Exception: CObject is not defined File: .....JS/CImage.js
return false;
}
};
}();
JEnv.init();
CImage.js
JEnv.include("JS/CObject.js");
function CImage (element)
{
var _this = element;
}
CImage.prototype = new CObject();
CObject.js
function CObject(element)
{
}
CObject.prototype = new XYZ();
CObject.prototype.capture = "object";
CObject.prototype.Init = function()
{
};
CObject.prototype.SetObject = function(element)
{
_this = element;
};
Помогите, разобраться |
В чем разобраться? В вашем коде?
|
Цитата:
|
Потому что подгрузка асинхронная, и когда есть алерт, файлы успевают подгрузиться.
|
Цитата:
|
Установкой callback-функции или использованием AJAX.
|
Цитата:
|
Это вообще не очень хорошая идея, дозагружать таким образом файлы. На начальном этапе может и разберетесь, но потом проблем не оберетесь. Но если сильно, то читайте http://jsx.ru/
|
Цитата:
|
Ну тогда не с того вы начали переваривать.
|
Цитата:
|
|
|
Цитата:
|
e1f,
eval там наименьшая проблема. Основная -- очень долго будут грузиться скрипты, причем браузер на это время зависнет. |
Да. Вообще, в чем смысл подхода? Доставить тем, кто пришел из сей и не может привыкнуть к хтмл-инклуду?
|
Смысл есть, но решается, конечно, не в том месте. Целью инклюдов должно быть не удобство разработки, а уменьшение запросов к серверу. Т.е. сборку нужно производить на сервере.
|
Да, так согласен.
|
Цитата:
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Цитата:
http://javascript.ru/tutorial/events/timing |
| Часовой пояс GMT +3, время: 19:42. |