Как измененять расцветку progressmeter javascript-ом?
Спасибо.

а разве он использует не системный стиль?

Shutnik пишет

а разве он использует не системный стиль?

Угу. Но можно и сменить.
У меня вот такая штука работала:

Выделить код

Код:

/* CacheViewer (а иначе после заполнения полоски текст не читается...) */
@-moz-document url(chrome://cacheviewer/content/cacheviewer.xul) {
	.progress-bar {
		-moz-appearance: none !important;
		background-color: #999 !important;
	}
}

Т.е. надо сделать, например, так:

Выделить код

Код:

var progressmeter = ...;
progressmeter.className = "myClass";

А в стилях прописать

Выделить код

Код:

progressmeter.myClass > .progress-bar {
	-moz-appearance: none !important;
	background-color: #999 !important;
}

Или играться с динамическим добавлением CSS (styles.insertRule – styles.deleteRule) / получением требующегося элемента через что-нибудь вроде getAnonymousNodes (getAnonymousElementByAttribute).

Спасибо. Идея работает.

Интересно, а возможен ли такой или подобный финт для обеспечения поддержки раскраски полос прокрутки? Было бы очень хорошо...

MySh пишет

подобный финт для обеспечения поддержки раскраски полос прокрутки?

В принципе, все по-прежнему.
Т.е. нужно:
0) распарсить все стили (Text Shadow, вроде, именно это и делает) и найти стили для полос прокрутки;
1) на основании найденного добавить свой стиль вида
<оригинальные_селекторы> (к чему применить) { фон_полосы_прокрутки: заданный_цвет; }

Причем не ясно, куда именно добавлять стили – если в оригинальную страничку, то не факт, что они заработают (а иначе уже был бы CSS-хак для раскраски в Firefox).
Правда, можно воспользоваться методом от Stylish и привязывать добавляемый стиль к нужному URL'у. Но при этом нужно делать механизм удаления стиля при выгрузке объекта window, для которого он работал (а иначе такие безобразия чреваты тормозами и утечками памяти).
А скроллбары перекрашиваются, да – многочисленные темы оформления это подтверждают.

Но это только теория.

Так что нужен понимающий JavaScript энтузиаст, желающий получить оную фичу, да еще и умеющий при этом писать расширения.

28-11-2008 19:17:29
Причем это только для прописанных в CSS цветов, а ведь еще можно менять стиль из скрипта.

Infocatcher пишет

Правда, можно воспользоваться методом от Stylish и привязывать добавляемый стиль к нужному URL'у

Я пробовал ставить стили для Stylish, с которыми всё якобы должно работать, но оно не работало... :(

Infocatcher пишет

Но при этом нужно делать механизм удаления стиля при выгрузке объекта window, для которого он работал (а иначе такие безобразия чреваты тормозами и утечками памяти).

Не очень понял суть фразы, но основной смысл вроде ясен. Никакого простого и удобного пути нет. Жаль...

Infocatcher пишет

Так что нужен понимающий JavaScript энтузиаст, желающий получить оную фичу, да еще и умеющий при этом писать расширения.

Это очевидно. Проблема в том, что оба условия пока не выполняются одновременно :)