JavaScript: изменить фон Div после времени - PullRequest
0 голосов
/ 29 июня 2011

У меня есть раздел рекламы на моем сайте. Для большинства пользователей это загружается просто отлично и работает как задумано. Однако, если у пользователя есть своего рода блокировщик рекламы, реклама не отображается, и отображается пустая область сайта.

Мое решение? Я хотел бы разместить фоновое изображение под рекламой, которая просит пользователей рассмотреть возможность включения рекламы только на этом сайте. Это изображение не навязчиво и дает пользователю выбор, поддерживать или нет сайт, который он посещает. С помощью простого CSS я могу сделать эту работу очень хорошо (просто используйте background-image и это хорошо).

Проблема в том, что реклама загружается немного (для некоторых пользователей примерно секунда или около того). Я не хочу, чтобы это фоновое изображение отображалось ПРЕЖДЕ, ЧЕМ у рекламы есть возможность загрузить, поэтому я бы хотел изменить фон div через некоторое время (возможно, 2-3 секунды).

Вот моя текущая попытка использования функции JavaScript:

<script type="text/javascript">
function show_banner(){
    document.getElementById('banner').style.background="url('images/banner_bg.png')";
}
function show_banner_delay(){
    setTimeout("show_banner()", 3000);
}</script>

Это HTML-код:

<div id="banner-wrap">
    <div id="banner">
        <!--Google AdSense Code Here-->
    </div>
</div>

Мне кажется, что я, возможно, просто что-то упускаю из-за базового синтаксиса, но, похоже, я не могу это понять!

СПАСИБО ЗА ЛЮБУЮ ПОМОЩЬ !!!

Ответы [ 2 ]

1 голос
/ 29 июня 2011

Отбросьте функцию show_banner_delay. Проверьте это:

function show_banner(){
    document.getElementById('banner').style.backgroundImage="url('images/banner_bg.png')";
}

window.onload = function() {
   setTimeout(show_banner, 3000);
};
1 голос
/ 29 июня 2011

Попробуйте это: setTimeout(show_banner, 3000);

Кроме того, просто для правильной меры измените ...style.background = url... на ...style.backgroundImage = url..., если вы не собираетесь изменять другие атрибуты фона.

...