• Как сделать чтобы модальное окно не сдвигало блок position:fixed?

    szQocks
    @szQocks
    malayamarisha,
    Единственно, на данный момент, при открытии модального окна вместо отсутствующего скролла выводится незаполненный кусочек первой строки меню )
    Но это уже другая история )
    да хоть так и хоть так - будет проблема какая-нибудь

    я делал проекты с модальными окнами - у меня там прыгал контент вправо при открытии модальных окон - и я считаю это нормой

    P.S да и толком я ничем не помог
    Написано
  • Как сделать чтобы модальное окно не сдвигало блок position:fixed?

    szQocks
    @szQocks
    malayamarisha, хотя нет, туплю, сдвига не будет, проверил, я думал сдвиг будет наверх. А ты говоришь в право, тут единственный вариант вижу это добавить padding который равен ширину скролла для body и header, во время открытого модального окна, но и лучше этого не делать, пусть прыгает.
    Написано
  • Как сделать чтобы модальное окно не сдвигало блок position:fixed?

    szQocks
    @szQocks
    а какой именно сдвиг ? смотри если у тебя изначально header имеет position: fixed и мы прокрутили страницу на половину и решили открыть модальное окно - в этот момент header как двигался сверху так и будет оставаться сверху, о каком сдвиге ты говоришь - непонятно, точнее опиши проблему
    Написано
  • Как отследить перемещение элемента?

    szQocks
    @szQocks
    Дмитрий,
    Причем тут gap, свойства и стили всех родителей и потомков???


    Что если один из элементов относительно которого происходи позиционирование, не меняя своего размера, меняет положение, будь то transform translate, отрицательный margin или он находится внутри сетки которая, допустим, увеличила gap


    ты сам не знаешь что хочешь, как я и сказал ранее - скорее всего задача решается проще чем твоя идея, с отслеживанием всего этого, marign, gap и т.д

    если покажешь демо, или описание задачи - я попробую её понять, и возможно подскажу нормальное решение а не то что хочешь сделать ты

    только не надо мне повторять именно твои мысли - для решение этой задачи, а расскажи саму задачу ( ты же как-то пришёл к мыслям которые ты пишешь здесь, не с неба же их взял )
    Написано
  • Как отследить перемещение элемента?

    szQocks
    @szQocks
    Дмитрий, вообще отслеживание одновременно, стили у контейнера, тот же gap, и всех потомков а точнее все их стили, типа margin, width и т.д ( ну тут до бесконечности можно перечислять ) - это невероятно, очень трудозатратная операция для браузера, той же оперативки, у тебя не то что сайт будет лагать, а целый браузер.

    можно это конечно через debounce или throttle обернуть, но всё равно - это идея не хорошая
    Написано
  • Как отследить перемещение элемента?

    szQocks
    @szQocks
    Дмитрий, ты не верно подходишь к решению задачи, которая стоит перед тобой. Я уверен что там всё намного проще чем кажется на первый взгляд, просто ты мыслишь не в том направлении.

    На сколько я понял из всего что ты написал - ты хочешь при dropdown отследить элемент какими-то необычными способами.

    Попробуйте теперь заставить блок "бегать" за кнопкой изменяя ее положение различными методами.
    - это похоже на группировку, если один должен бегать якобы за другим, они должны быть в едином блоке, и перемещать уже не единый блок, а целую группу, что бы казалось что один бегает за другим.

    в 99.99999999999999999999999999999999999999999% - нет той задачи, которая бы требовала отслеживать изменение gap ( стиль )
    Написано
  • Как преобразовать массив с 3 индекса?

    szQocks
    @szQocks Автор вопроса
    0xD34F,
    А если открыть документацию и посмотреть, что делает map со своим вторым параметром?
    - вызывает callback для каждого элемента, но в качестве контекста - будет второй агрумент который был передан в метод map, что-то типа этого fn.call(второй аргумент map, остальные аргументы) , в this - будет массив [ num / arr.length | 0, num % arr.length ] - но моя проблема не в этом была, а в том что num / arr.length | 0 - эта запись, а именно оператор побитового или, я например не часто его вижу, и что бы понять сходу какой будет результат num / arr.length | - здесь, то пришлось открыть документацию и вспомнить а что делает оператор побитового или, и продебажить.

    только пока значение index не превышает верхнюю границу массива.
    что значит верхняя граница массива ? длина массива ?
    Написано
  • Как преобразовать массив с 3 индекса?

    szQocks
    @szQocks Автор вопроса
    0xD34F, спасибо что изменили ответ, написали различные варианты, я хоть и разобрался в них - в том как они работают, но в голове от этого не прибавилось. Так как в конечном итоге, я не понял ход ваших мыслей.

    вот кстати этот участок кода, сложноватый что бы с ходу так просто я глянул и понял что тут происходит

    const newArr = arr.map(function(n, i, a) {
      return n + this[0] + (((i - index) % a.length + a.length) % a.length < this[1]);
    }, [ num / arr.length | 0, num % arr.length ]);


    + это похоже что-то из разряда тестового задания для эксперта ...
    где есть один лишний % a.length и побитовое или в массиве, которым толком никто нигде никогда не пользуется, и в большинстве случаев человек пойдёт гуглить и вспоминать что делает этот оператор

    P.S ну и сам вариант что я тупой - я тоже не отрицаю. Повторю математику, может будет в этом толк, посмотрим.
    Написано
  • Как преобразовать массив с 3 индекса?

    szQocks
    @szQocks Автор вопроса
    0xD34F мне вот интересно, вы же когда писали это решение - просто экспериментировали с делением с остатком, подгоняя те или иные числа ? главное что бы результат получился тот который был нужен ?

    потому что заранее в голове продумать такой вариант - сомневаюсь что возможно
    Если вы заранее продумали этот вариант, то что тогда такого нужно изучать что бы на столько нестандартно мыслить ?
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, я тебя запомнил, шутник, что б я ещё раз ответил на твои вопросы - никогда!

    действительно там есть стиль зум, мде
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, ну проанализировал я твой код и скрин, и сделал вывод что это не модалка уходит за пределы экрана а блок относительно которого она позиционируется, и вангую, что она позиционируется абсолютом - не относительно боди

    тут так просто не разберешься, копаться надо, смотреть уже другой блок, блок относительно которого она позиционируется - но стили его и код его мне скидывать не надо, я этой шляпой заниматься не собираюсь, но ответ я дал относительно этого кода и скрина который ты скинул
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, проблема в стилях наверное, вряд ли подскажу что-то, так как что бы точно ответить на твой вопрос, надо взглянуть то как она там в разметке в HTML появляется это окно + посмотреть стили, сам понимаешь - гемороя выше крыши, попроще вопросы задавай)

    да и если на то пошло, раз ты разраб на vue, с модалкой должен на легаси разобраться чё уж...вряд ли сверхъестественная она
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, она не за пределами, лишь часть её, тогда в условии не нужно складывать ширину, просто проверять if(left < 0 || left > window.screen.width) { }

    а хотя в твоём случае это проверка не поможет, у тебя там вообще стоит 370+ px left, хз как ты так сверстал её
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, как ты её в боди кидать будешь - это я не знаю, в реакте есть порталы, в Vue - хз
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, знаешь что бы не парить мозги, скажу как было бы более адекватно сделать модалку

    обёртку у модалки - кидаешь в боди а тело модалки, кидаешь в этот блок обёртку и - ровняешь относительно этого же блока в котором она находится, делаешь этот блок обёртку у модалки абсолютом, и у боди скрываешь скролл, и тогда не придётся делать какие-то вычисления о том, ушёл ли блок за пределы окна просмотра и т.д
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, if(left < 0 || left > window.screen.width) { }

    или мб так даж

    if(left + width < 0 || left >  window.screen.width) { }


    ?
    Написано
  • Как отследить, вышел ли блок за пределы окна браузера или нет?

    szQocks
    @szQocks
    Niksak, почему бы тебе не сверить ширину и высоту ( если высота нужна тоже ) с блоком который равен 100% ширины окна просмотра ?

    а даже не блок сверить а просто получить window.screen.width
    Написано
  • Как сделать поочередное заполнение блоков?

    szQocks
    @szQocks
    0xD34F, а не, туплю демо не посмотрел
    Написано
  • Как сделать поочередное заполнение блоков?

    szQocks
    @szQocks
    0xD34F, там если не ошибаюсь в вашем решении индикаторы полностью закрашиваются, а не на половину ( точнее не по процентам )
    Написано