Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.05.2011, 15:31
Аспирант
Отправить личное сообщение для mister_maxim Посмотреть профиль Найти все сообщения от mister_maxim
 
Регистрация: 09.02.2009
Сообщений: 57

как поставить обработчик события на загрузку страницы?
Без jQuery и других библиотек.
Без прописки в теге body onload='iniit()'
--------
Вот мой пробный пример до тега body:
wait=function(f, t, th, reg)
		{
			var osi={};
			if(!th)th=null;
			var fi=function(){
				if(f.call(th,reg))
				{	
					clearInterval(osi.si);
				};
			};
			osi.si=setInterval(fi,t);
		};		
	wait(function(){var b=document.getElementsByTagName('BODY')[0]; if(b){setTimeout(init,0);return true;};return false;},10);

Однако я сомневаюсь, что как только станет доступно document.getElementsByTagName('BODY')[0], то это и будет означать, что событие onload уже прошло. Так ли это?
Если нет, то как САБЖ?

ps. И такой вопрос: обязательно ли событие onload страницы наступает позже чем может быть получен iframe.contentDocument или iframe.contentWindow.document пустого iframe находящегося на страницы?
Ответить с цитированием
  #2 (permalink)  
Старый 17.05.2011, 15:36
Аватар для Starkua
Аспирант
Отправить личное сообщение для Starkua Посмотреть профиль Найти все сообщения от Starkua
 
Регистрация: 10.02.2010
Сообщений: 52

Есть такая, очень маленькая либа https://github.com/ded/domready
Ответить с цитированием
  #3 (permalink)  
Старый 17.05.2011, 15:42
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

вот пример
__________________
.
Ответить с цитированием
  #4 (permalink)  
Старый 17.05.2011, 15:46
Аватар для Starkua
Аспирант
Отправить личное сообщение для Starkua Посмотреть профиль Найти все сообщения от Starkua
 
Регистрация: 10.02.2010
Сообщений: 52

Сообщение от Skipp Посмотреть сообщение
вот пример
Делать проверку по названию браузера и его версии - рискованно. Вышла новая версия, с новым api - и все, код не работает.
Нужно проверять наличие соответствующих методов, тогда все будет ок
Ответить с цитированием
  #5 (permalink)  
Старый 17.05.2011, 15:53
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

методы тоже иногда меняются
ну а вообще согласен, я не давал готового решения я привёл только пример.
__________________
.
Ответить с цитированием
  #6 (permalink)  
Старый 17.05.2011, 21:12
Аспирант
Отправить личное сообщение для mister_maxim Посмотреть профиль Найти все сообщения от mister_maxim
 
Регистрация: 09.02.2009
Сообщений: 57

Спасибо, Skipp, и Starkua, понял что код в обоих случаях не совсем простой из за кроссбраузерности.
ready.js от Starkua, как то для меня странно закодировано, без комментариев, боюсь даже использовать.
Ответить с цитированием
  #7 (permalink)  
Старый 17.05.2011, 21:18
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,489

http://javascript.ru/unsorted/top-10...ions#9-onready
Или тупо window.onload и не выё*.)
__________________
29375, 35
Ответить с цитированием
  #8 (permalink)  
Старый 17.05.2011, 21:22
Аватар для Starkua
Аспирант
Отправить личное сообщение для Starkua Посмотреть профиль Найти все сообщения от Starkua
 
Регистрация: 10.02.2010
Сообщений: 52

mister_maxim, советую научиться пользоваться гитхабом - там очень много нужных либ. По моей ссылке есть и минифицированная и нормальные версии. Вот читабельная https://github.com/ded/domready/blob/master/ready.js
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как передать значение переменной в IFRAME в поле формы JS-ом из самой страницы? DeUre Общие вопросы Javascript 14 17.12.2013 16:37
Как в IE динамически установить значение события onClick? Гость Элементы интерфейса 6 16.01.2011 23:46
Постоянное обновление страницы. Как? ratt Общие вопросы Javascript 9 13.10.2010 02:55
Как вызвать событие после события определенного в onchange Наталья Events/DOM/Window 2 12.09.2009 13:51
отправка файла через обработчик события submit starrich AJAX и COMET 2 13.08.2008 22:29