Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   stylesheets&WebKit (https://javascript.ru/forum/dom-window/10585-stylesheets-webkit.html)

float 10.07.2010 22:01

stylesheets&WebKit
 
Кто-нибудь сталкивался с такой проблемой:
в документе с внешними стайлшитами,

если брать скажем offsetWidth у элемента(width в стилях прописана)
safari&chrome высчитывают её не учитывая стилей.
если поставить задержку всё работает норм.

А вот простейшая функция

function checkSSready() {
	if(document.styleSheets[0]) {setTimeout("onSSready()", 0); alert('not yet');}
	else{setTimeout("onSSready()", 10);}
}

function onSSready() {
	alert(document.body.offsetHeight);
}

checkSSready();

не оч универсальная:no:
А как вы решаете эту проблему?

pandasensey 13.07.2010 11:42

а если все проверять после body.onload?

float 14.07.2010 20:57

Цитата:

а если все проверять после body.onload?
можно...
Но я на онлоад никогда ничего не ставлю. Картинок дофига обычно;)

subzey 14.07.2010 21:21

изменение ширины он лоад

float 14.07.2010 21:51

Кстати, если подключить Jquery всё норм работает).
А в моём способе, фигня в том, что неизвестно сколько стайлшитов подключено....
Стоп. Если скрипт поместить ниже... Можно же написать styleSheets.length...?


Часовой пояс GMT +3, время: 14:32.