Ответы пользователя по тегу JavaScript
  • Как вставлять рекламные блоки AdSense через скрипт?

    partyzanx
    @partyzanx Автор вопроса
    Решение было следующим:

    1.
    <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
    вырезаем и вставляем перед закрывающим тегом head

    2.

    <script>
    let lijuArr = document.querySelectorAll('.liju') || []; 
     
    // Вставляем дивы с классом advDiv после дивов с классом liju
    
    for (let i = 0; i < lijuArr.length; i++) {
    let advDiv = document.createElement('div');
    advDiv.classList.add('advDiv'); 
    lijuArr[i].after(advDiv); 
    }
    
    // После загрузки страницы в дивы с классом advDiv вставляем <ins class... , и после каждого дива вставляем (adsbygoogle = window.adsbygoogle || []).push({});
    document.addEventListener('DOMContentLoaded', function(){
    let advArr = document.querySelectorAll('.advDiv') || []; 
     
        advArr.forEach(element => {
            element.innerHTML='<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-2272238036927" data-ad-slot="43425234" data-ad-format="auto" data-full-width-responsive="true"></ins>';
            (adsbygoogle = window.adsbygoogle || []).push({});
        });
     
        });
     
    </script>
    Ответ написан
    Комментировать
  • Почему Number('0o1') это 1?

    partyzanx
    @partyzanx Автор вопроса
    Целые числа могут быть выражены в десятичной, шестнадцатеричной, восьмеричной и двоичной системах счисления.
    Запись начала литерала 0o (или 0O) указывает, что число находится в восьмеричной СС. Октальные целые числа могут включать только цифры 0-7.
    Начало 0x (или 0X) указывает шестнадцатеричную СС. Шестнадцатеричные целые числа могут включать цифры (0-9) и буквы a-f и A-F.
    Начало 0b (или 0B) указывает двоичную СС. Двоичные целые числа могут содержать цифры только 0 и 1.
    Примеры:

    alert('0o11' == 9); // true
    alert('0x10' == 16); // true
    alert('0b11' == 3); // truе
    Ответ написан
    Комментировать
  • Почему не работает условие?

    partyzanx
    @partyzanx Автор вопроса
    if(person1 != "")
    Ответ написан
    Комментировать
  • Как думаете, почему не работает скрипт?

    partyzanx
    @partyzanx Автор вопроса
    поместил скрипт в footer пониже, заработало. Спасибо за помощь.
    Ответ написан
    Комментировать
  • Mozila Scrollbar?

    partyzanx
    @partyzanx
    Мне помогло эта библиотека dragon.deparadox.com/#get
    Нужно установить и подключить два скрипта Drag On и Bar on
    <script src='/scripts/drag-on.js'></script> <!-- Позволяет пролистывать документ методом drag and drop (перетаскиванием) http://dragon.deparadox.com/#get . В класс нужно добавить dragon  -->
    <script src='/scripts/bar-on.js'></script> <!-- Позволяет изменять стиль скруллбара даже в firefox http://dragon.deparadox.com/#get . В класс нужно добавить baron. В css прописать стандартные стили  -->


    После этого каким-то образом firefox начинает слушать настройки скруллбара, заданные через css

    .forscroll {
    scrollbar-color: white white; /* В firefox делает скруллбар под цвет фона. Это нужно задавать, чтобы до момента прогрузки скрипта bar on скруллбар не мелькал */
    }

    .forscroll::-webkit-scrollbar {width: 0;}
    Ответ написан
    Комментировать
  • Как сделать, чтобы меню закрывалось?

    partyzanx
    @partyzanx Автор вопроса
    Вопрос решился очень просто
    После каждого div создаём ещё контейнер .hoverHelper
    .hoverHelper {display: none;
    width: 0;
        height: 0;
        top: 0;
        left: 0;
        margin-right: 0!important;
        transition-delay: .5s;}
    .div:hover + .hoverHelper {display: unset;
        width: 40px;
        margin-left:-40px;
        height: 40px;
        top: 0; 
        transition-delay: .5s;
        z-index: 10;
    }

    Всё решилось очень просто на css

    Получается, что этот .hoverHelper перекрывает div с отсрочкой полсекунды, и когда мы второй раз жмём на div, ты мы уже жмём на невидимый .hoverHelper, и поэтому эффект .div:hover снимается.
    Ответ написан
    Комментировать
  • Почему сильно съезжает линия?

    partyzanx
    @partyzanx Автор вопроса
    проблема было в том, что у меня два меню было, и поэтому складывались суммы нескольких меню...
    я конкретизировал код, и норм всё стало.

    $(document).ready(function() {
      // cool nav menu
      $(window).on('load resize', function() {
        var $thisnav = $('.main-category-menu .current-menu-item').offset().left;
    
        $('.main-category-menu .menu-item').hover(function() {
          var $left = $(this).offset().left - $thisnav;
          var $width = $(this).outerWidth();
          var $start = 0;
          $('.main-category-menu .wee').css({ 'left': $left , 'width': $width });
        }, function() {
          var $initwidth = $('.main-category-menu .current-menu-item').width();
          $('.main-category-menu .wee').css({ 'left': '0' , 'width': $initwidth });
        });
      });
    
    });
    Ответ написан
    Комментировать
  • Как правильно выполнить сложение?

    partyzanx
    @partyzanx Автор вопроса
    var checkpoint = window.innerHeight * 0.03 + 40;
    Ответ написан
    Комментировать