ОсновноеRadiotalkПользовательское
Программирование
6   •   Посмотреть все темы

Смена фона

 

1410
Антон @tonik
Здравствуйте!
Ребята, не знаю как верно сформулировать вопрос, попробую на пальцах (:

Имеется (допустим) кучка чередующихся, графических баннеров, каждый со своим фоном.
Всё это базируется в <div class="head">...</div>
Где (допустим) .head {background: #fff;...}...

Может кто подскажет скриптик автоматической смены фона head под фон баннера? (баннеры флешные)...

2970
удалён @Foggy
оговорюсь сразу: из css, html или js не выяснить, какой фон внутри флэш-объекта.
на чистом css задать фон для .head, исходя из имеющихся данных не выйдет. можно использовать js.
если баннеры хранятся у тебя на сайте, положи их в одну папку и дай им имена с нумерацией, например так: banner1.swf, banner2.swf и т.д.
далее в js нужен массив:
var h = [];
h[1] = '#333333';
h[2] = '#333333';
h[3] = '#333333';
// ну и сколько хочешь их тут

а далее зависит от того, каким образом у тебя выводятся баннеры. если это рандом, то вот пример использования:
function quo() {return ~~(Math.random()*(h.length))+1;} // функция рандома
var num = quo(), // num - выбранный функцией рандома номер
el = document.getElementById('head');
el.innerHTML = '<embed src="ПУТЬ_ДО_БАННЕРОВ/banner'+num+'.swf"></embed>'; // вывод баннера
el.style.backgroundColor = h[num]; // задаёт фон

и да, лучше использовать ид, а не класс. ибо с классом более сложной функция получится, чтоб добиться кроссбраузерности.
зелёное - номер баннера. соответственно по номеру подберёшь цвет. цвета обозначены синим. красным путь до папки, в которой они все лежат. опять же, если они лежат на твоём сайте.
если выводятся не рандомом, а как-то иначе - пиши, как выводятся.
p.s. я использовал самую простую запись <embed> без подробностей типа размера, у тебя скорее всего более сложная - используй свою.

UPD: не сразу сообразил вопрос задать: а нафиг оно вообще нужно? 🤪

Отредактировано Foggy - 25.09.2012