Полезная информация

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№104-09-2008 09:39:13

AllSeeingI
Участник
 
Группа: Members
Зарегистрирован: 12-03-2007
Сообщений: 107
UA: Firefox 3.0

Onload для chrome

Не про гугловский браузер :)

Существует ли событие, генерируемое при показе интерфейса браузера? Обычное:

Выделить код

Код:

window.addEventListener("load", function() { extention.init(); }, false);

срабатывает когда интерфейс вроде бы загружен, но ещё не показан.

?

Отсутствует

 

№204-09-2008 11:10:55

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 3.0

Re: Onload для chrome

Я бы попробовал window.addEventListener("DOMContentLoaded", ...), а если не поможет, то просто window.setTimeout( ... , 0).


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№304-09-2008 12:05:45

AllSeeingI
Участник
 
Группа: Members
Зарегистрирован: 12-03-2007
Сообщений: 107
UA: Firefox 3.0

Re: Onload для chrome

Я бы попробовал window.addEventListener("DOMContentLoaded", ...)

Не работает.

то просто window.setTimeout( ... , 0)

Ненадёжно - расширений может быть много, и отрабатывать они могут хз сколько. Пока нарыл такую конструкцию:

Выделить код

Код:

var timer = setInterval(function()
{
	if((gBrowser.docShell.busyFlags == 0) && !gBrowser.docShell.isExecutingOnLoadHandler && !gBrowser.docShell.isLoadingDocument && !gBrowser.mIsBusy)
	{
		clearInterval(timer);
	}
	else return;

	// дальше - код обработчика
	...
}

Вроде работает, но... Хочется чтоб наверняка.

Отсутствует

 

№404-09-2008 13:08:25

Shutnik
Участник
 
Группа: Extensions
Зарегистрирован: 12-11-2005
Сообщений: 3785
UA: Iceweasel 3.0

Re: Onload для chrome

а зачем это нужно? с интерфейсом можно работать уже после onload. если нужна задержка, то делается timeout

Отсутствует

 

№504-09-2008 13:42:19

AllSeeingI
Участник
 
Группа: Members
Зарегистрирован: 12-03-2007
Сообщений: 107
UA: Firefox 3.0

Re: Onload для chrome

с интерфейсом можно работать уже после onload

Не совсем: в этот момент, например, не определены CSS-параметры элементов интерфейса. Например узнать ширину тулбара сразу после onload я не могу.

если нужна задержка, то делается timeout

См. выше -ненадёжно это.

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]