ЭНЦИКЛОПЕДИЯ СОВРЕМЕННОГО САЙТОСТРОЕНИЯ

Простой скрипт ротации баннеров для Xenforo

Тема в разделе "Код JavaScript", создана пользователем Jonny, 8 июн 2017.

  1. Jonny

    Jonny Гуру Команда форума Администратор

    Сообщения:
    748
    Рейтинг:
    143
    Понадобися мне недавно скрипт ротации баннеров на JavaScript для форума на движке Xenforo.

    Вот, написал, делюсь.

    Вариант для Xenforo:

    Код:
    <xen:if is="{xen:helper ismemberof, $visitor, 2}">
    <script type="text/javascript">
    switch(Math.round((Math.random()*100000)%1)+1){
    case 1:
        document.write('<!--noindex--><a href="https://kwork.ru?ref=219912" target="_blank"><img src="/img/kwork_468x60_3.jpg" alt="Kwork.ru - услуги фрилансеров по 500 руб." height="60" width="468"></a><!--/noindex-->');
        break; 
    case 2:
        document.write('<!--noindex--><a href="https://www.etxt.ru/?r=max123" target="_blank" title="Биржа eTXT"><img style="margin: 6px 10px 5px 0;" src="/img/etxt_pen-yellow.png" border="0" title="Биржа eTXT" alt="eTXT"></a><!--/noindex-->');
        break; 
    }
    </script>
    </xen:if>
    Вариант для любого сайта:

    Код:
    <script type="text/javascript">
    switch(Math.round((Math.random()*100000)%1)+1){
    case 1:
        document.write('<!--noindex--><a href="https://kwork.ru?ref=219912" target="_blank"><img src="/img/kwork_468x60_3.jpg" alt="Kwork.ru - услуги фрилансеров по 500 руб." height="60" width="468"></a><!--/noindex-->');
        break; 
    case 2:
        document.write('<!--noindex--><a href="https://www.etxt.ru/?r=max123" target="_blank" title="Биржа eTXT"><img style="margin: 6px 10px 5px 0;" src="/img/etxt_pen-yellow.png" border="0" title="Биржа eTXT" alt="eTXT"></a><!--/noindex-->');
        break; 
    }
    </script>
    
    Вот схема для большего количества баннеров скрипта:

    Код:
    switch(Math.round((Math.random()*100000)%3)+1){
    case 1: 1 вариант;break;
    case 2: 2 вариант;break;
    case 3: 3 вариант;break;
    case 4: 4 вариант;break;
    }
    
    В более обобщенном виде
    
    switch(Math.round((Math.random()*100000)%(N-1))+1){
    case 1: 1 вариант;break;
    case 2: 2 вариант;break;
    ......
    case N: N вариант;break;
    }
     
    #1
  2. Загрузка...