• Как сверстать блок с такой же линией?

    @ksnk
    Сверстать именно такое - 3 столбика на 2 строки с фиксированной линией довольно просто. А вот сверстать в терминах ul-li с нефиксированным объемом разделов и нефиксированным количеством столбиков может оказаться сложнее. В таком "общем" случае я бы посоветовал "подкладывать" под элемент canvas и рисовать линии на нем. Так можно не только линии, но и более сложные фигуры, например стрелки
    Написано
  • 5 000 000 статей возможно на Джумле?

    @ksnk
    47911, Sphinx Там можно скачать не только бинарники и ссылки на гитхаб. Imho, более простой в настройках поисковый движок. Elastic Search более современный и гибкий инструмент, но разобраться с конфигурированием сложнее
    Пример работы:
    cо сфинксом, Elasticsearch
    Хотя в Вашем случае, насколько я понял, тормозит даже уже админка, так что сторонние текстовые поиски тут не помогут, надо смотреть какие запросы админки тормозят.
    Написано
  • 5 000 000 статей возможно на Джумле?

    @ksnk
    Поиск "магазинный", по свойствам или текстовый? Текстовый точно должен быть не родной джумловский, а на сфинксе, к примеру, или на эластике. Прямое открытие статьи по ссылке работает c нормальной скоростью? Если даже тут тормозит - нужно смотреть что с базой, запросами на странице, возможно ключики в таблицах где-то потерялись...
    Написано
  • Можно ли дождаться полной загрузки страницы и только потом ее открыть?

    @ksnk
    Скачай ajax'ом одержимое страницы, переправь собственный адрес с помощью history. перепиши собственный html тем что скачал с помощью document.write.
    Для ссылок внутри домена такая переправка должна работать.
    Если подсуетиться, чтобы скрипты и стили были теми же самыми, то должно получиться быстро.
    $(document).on('click','a.opps', function(){
                            let href=$(this).attr('href');
                            $.ajax(href, {
                                success:function(data){
                                    history.pushState({}, "", href);
                                    document.write(data);
                                }
                            })
                            return false;
    });

    Выглядит страшновато, так что используй на собственный страх и риск. :) Но, вроде, работает
    Написано
  • Как посчитать расстояние внутри города в Google Maps?

    @ksnk
    Про гугл не в курсе, но у яндекса есть вот такое https://yandex.ru/dev/maps/router/doc/ не оно?
    Ответ API содержит маршрут, разбитый на несколько участков. Каждый участок состоит из нескольких шагов, которые представлены ломаными линиями. Для каждого участка предоставляется информация о качестве дороги и ожидаемом времени на его прохождение.
    Написано
  • Как расположить элементы на одном уровне в разных грид элементах?

    @ksnk
    Если поискать - то кое что можно найти. Поменять разметку, покурить флекс, почитать про grid. Например тут
    Написано
  • Как подключить стили и meta, если в задании написано, что код не должен содержать html,header и body?

    @ksnk
    Делаешь отдельно, на php, например, шаблон того, во что будет вставляться твой "адаптив по макету". Наверное, заказчик таки скинул что-то со словами "вот сюда, примерно..." . Вот это и берешь за основу шаблона, ну или сам мастеришь, проявля ум и сообразительность. Например можно притырить главную магазина заказчика. В шаблоне будут и хидер и боди и прочие футеры с метами...
    Отдельным файлом - то, что нужно - тот самый "адаптив...", который вставляется в шаблон обычным incude (для этого и нужен php)
    Отдаешь оба файла, но говоришь, что решение в этом, а вот это нужно для демонстрации...
    Написано
  • Как правильно компилировать Pascal код?

    @ksnk
    Погугли что такое free Pascal, как его ставить и поставь. Не думал, что он еще живой, а вот подиж ты...
    Написано
  • Как сделать в Css эффект паралакса с видеофоном и картинкой?

    @ksnk
    На CSS такое не решить. На JS, по идее, при старте страницы поставить слушателя для window на "scroll". В нем, проверять что элемент '.foto' не высовывается "сверху" экрана. Это проще всего сделать getBoundingClientRect для этого элемента. Как только top станет не больше 0 - удалить элемент с видео со страницы (это imho, проще для этого случая, чем скрывать) и убрать слушателя scroll'a. Все, вроде, должно стать как надо.
    Написано
  • Фильтры товаров интернет-магазина, как грамотно реализовать обмен данными с сервером?

    @ksnk
    У меня, обычно, в результате запроса сервер выдает найденный контент и url, на который будет заменен текущий. Так можно сохранить в адресе только важные параметры, если это почему то нужнее, чем сохранить полный фильтр, или выкинуть уже не использующиеся ключи фильтра или упаковать все параметры в GUID.
    Адрес подменяем с помощью historyApi, да. Вот только если обновление страницы идет после изменения каждого флага фильтра - лучше использовать не pushState а replaceState, чтобы не загаживать историю броузера.
    Написано
  • Фильтры товаров интернет-магазина, как грамотно реализовать обмен данными с сервером?

    @ksnk
    Фильтры нужно сохранять в GET. Однако, нужно ответить себе на вопрос - сколько отдельных фильтров будет? И что будет, если каждую пару ключ-значение упихать в адресную строку. Если результат приемлем, то передавать get и не париться. Если адресная строка становится неуправляемо большой - можно подумать об упаковке параметров в индексы или вообще радикально - сохранение в базе набора параметров фильтра и замена строки на UID этого набора. Нужно еще понимать, что при передаче GET этот адрес появится в поисковике и будет периодически спамить сервер. Если фильтрация - длительный процесс - придется запрещать фильтры для ботов и/или кэшировать результат.
    Написано
  • Возможно ли корректировать текущий файл эксель?

    @ksnk
    Если так приспичил Excel, почему бы не держать файл в Google документах? Там вполне вменяемый api для редактирования документов.
    Если нужно работать именно с существующим MSExcel документом - читать доку по `phpoffice/phpspreadsheet`. Там можно менять атрибуты у конкретных ячеек.
    Еще вариант - организовать в файле Excel внешние данные и спрашивать сервер, какое событие в какой цвет рисовать...
    Написано
  • Как изменить шаг Drag’n’Drop при mousedown?

    @ksnk
    Анатолий, https://codepen.io/ksnk/pen/MWPbZPd
    Из изменений - заведена переменная max,
    let thumb = slider.querySelector('.thumb'),
        max=5 // till 0 to max
        ;
    
    ...
            if (newLeft > rightEdge) {
              newLeft = rightEdge;
            }
            let step=Math.round(rightEdge/max), // шаг
                value=Math.round(newLeft/step);  // значение скроллера
            thumb.style.left = (step*value) + 'px'; // смещение бегунка скроллера
          }
    ...
    Написано
  • Как изменить шаг Drag’n’Drop при mousedown?

    @ksnk
    А в чем проблема ? Этот код всего лишь отрисовывает элемент. То, на сколько пикселей перемещается бегунок определяется мышкой.
    Все что можно поменять - это относительный "шаг" одного пикселя. Весь размер элемента
    0..rightEdge. Текущее состояние элемента newLeft . Задача на пропорции ?
    Написано
  • Как перед однозначным номером даты поставить ноль?

    @ksnk
    Что не правильно?
    В регулярке написано, что менять одну цифру, перед которой стоит пробел и после которого стоит пробел. В исходной строке перед цифрой стоит начало строки.

    Если очень нужно получить две цифры при выводе даты - используй не 'long' а прямой формат

    $formattedDate =Yii::$app->formatter->asDate($date, 'dd MMMM Y г.');
  • Как закрыть данный попап при клике вне него?

    @ksnk
    Добавь в функцию renderPopup в конец что-то такое
    ...
    popup.appendChild(btnBrand);
    //
          var mouseupHandler=function (e) {
            if (!popup.contain(e.target)) {
                document.removeEventListener("mouseup", mouseupHandler);
                popup.classList.remove("open");
            }
        };
        document.addEventListener("mouseup",mouseupHandler,true);
    }

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

    @ksnk
    Останется только объяснить тем пользователям, которые запретили себе "всплывающие окна", что они в корне неправы ;)
  • Как сделать открытие страницы в новой вкладке в маленьком размере?

    @ksnk
    Почему бы не
    - открыть форму прямо в отдельной вкладке href="..." target="_blank" ?
    - если хочется чтобы адрес не менялся - можно скриптом скачать страничку и вставить ее содержимое в iframе на нужной. Или завести отдельную "прокси" страничку на базовом сайте, которая сама будет подменяться нужной формой. Так как "форма наша" - предстоящий геморрой с простановкой абсолютных адресов скриптов и стилей с картинками можно пережить.
  • Как сделать линии по всему сайту ПРАВИЛЬНО и логично?

    @ksnk
    Ну, так же как и сделано уже. вот только при размере экрана <1220 делать svg бэкграунд с теми же полосками. Svg - чтобы не атрофировались линии при неудачном расширении. Поставить background-size:100%