Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 13.04.2009, 17:44
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

подозреваю, что более кросбраузерно будет атачить к head-у
вот код из статьи
function attachScript(id, src){
var element = dojo.doc.createElement("script")
element.type = "text/javascript"
element.src = src
element.id = id
document.getElementsByTagName("head")[0].appendChild(element)
}
Ответить с цитированием
  #12 (permalink)  
Старый 13.04.2009, 17:47
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Gvozd
подозреваю, что более кросбраузерно будет атачить к head-у
Без разницы.
Ответить с цитированием
  #13 (permalink)  
Старый 13.04.2009, 17:47
LamerNo1
 
Сообщений: n/a

не грузит
и ИЕ через раз
буду стучать бубном...
Ответить с цитированием
  #14 (permalink)  
Старый 13.04.2009, 18:19
LamerNo1
 
Сообщений: n/a

Сообщение от Gvozd Посмотреть сообщение
подозреваю, что более кросбраузерно будет атачить к head-у
вот код из статьи
function attachScript(id, src){
var element = dojo.doc.createElement("script")
element.type = "text/javascript"
element.src = src
element.id = id
document.getElementsByTagName("head")[0].appendChild(element)
}
а что это за dojo???
Ответить с цитированием
  #15 (permalink)  
Старый 14.04.2009, 00:34
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

я упо скопипастил код из статьи.
это часть фреймворка, и dojo.doc Это наврено обертка над document
в лданном случае можно спокойно писать document.createElement("script")
Ответить с цитированием
  #16 (permalink)  
Старый 14.04.2009, 13:51
LamerNo1
 
Сообщений: n/a

Сообщение от Gvozd Посмотреть сообщение
я упо скопипастил код из статьи.
это часть фреймворка, и dojo.doc Это наврено обертка над document
в лданном случае можно спокойно писать document.createElement("script")
Всем спасибо за подсказки... с кнопкой работает..
в идеале нужно чтоб работало на window.onload
дело в том что изначально срабатывает php script который определяет isset или !isset переменная, и если определена выводит documen.onload, который в свою очередь подгружает файл скрипта

работает:
<input type="button" onclick="loadscr1()">
<script>
function loadscr1() {
var scri = document.createElement('script');
scri.setAttribute('type', 'text/javascript');
scri.src = 'new/js/couscr/Script.js';
document.getElementsByTagName('head')[0].appendChild(scri);
}
</script>


не работает:
<script>
window.onload = function () {
loadscr1();
}
</script>
<script>
function loadscr1() {
var scri = document.createElement('script');
scri.setAttribute('type', 'text/javascript');
scri.src = 'new/js/couscr/Script.js';
document.getElementsByTagName('head')[0].appendChild(scri);
}
</script>


и через jquery пытался сделать не получилось..
так: <body onload="loadscr1()"> тоже не хотелось бы
Ответить с цитированием
  #17 (permalink)  
Старый 14.04.2009, 17:30
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

во втором варианте либо поменяй местами теги script, либо объедени их в один(тогда местами можно не менять)
рпоблема в том, что в момент, когда ты пытаешся повесить событие, функция loadscr1() еще не определена
Ее надо либо определить в более раннем блоке script
либо просто поместить в тот же блок(в таком случае она будет видна, даже если будет написана позже.но только если ее определять как ты написал)
<script>
function loadscr1() {
var scri = document.createElement('script');
scri.setAttribute('type', 'text/javascript');
scri.src = 'new/js/couscr/Script.js';
document.getElementsByTagName('head')[0].appendChild(scri);
}
window.onload = function () {
loadscr1();
}
</script>
Ответить с цитированием
  #18 (permalink)  
Старый 14.04.2009, 19:42
LamerNo1
 
Сообщений: n/a

пробовал поменять, ща еще попробую
Ответить с цитированием
  #19 (permalink)  
Старый 15.04.2009, 17:33
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

первый вариант, предложенный Kolyaj, у меня работает:
window.onload = function() {
	var s = document.createElement('script');
	s.src = '1.js';
	document.body.appendChild(s);
}

1.js:
alert(2);

проверял в ie 7, ff 3, opera 9. Либо у тебя более старые версии, либо специфический скрипт
Ответить с цитированием
  #20 (permalink)  
Старый 15.04.2009, 20:21
LamerNo1
 
Сообщений: n/a

Сообщение от x-yuri Посмотреть сообщение
первый вариант, предложенный Kolyaj, у меня работает:
window.onload = function() {
	var s = document.createElement('script');
	s.src = '1.js';
	document.body.appendChild(s);
}

1.js:
alert(2);

проверял в ie 7, ff 3, opera 9. Либо у тебя более старые версии, либо специфический скрипт
Так работает, но в файле скрипта обязательно должна быть прописана функция... тамскрипт не просто алерт
может попробовать таймаут выставить... секнду-две
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отловить событие изменения элемента pavl Events/DOM/Window 13 13.04.2009 14:00
какое событие возникает во время формирования html IT-AleX Events/DOM/Window 2 20.02.2009 16:13
Событие OnLoad у iframe в IE milk3dfx Events/DOM/Window 2 16.02.2009 22:09
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 14:40
JavaScript как файл закодировать base64? Трактор AJAX и COMET 3 10.06.2008 13:22