• Правильно ли я назвал классы и сделал структуру HTML?

    @lolzqq
    HTML,CSS,JS,PHP
    По композиции луну бы сделать закреплённой жёстко, чтобы на движения мыши не реагировала.
    А классы - главное чтобы система была какая-то, так-то называйте их как угодно

    Ругается на значение аттрибута as="fonts" - должно быть as="font" MDN

    Попробуйте уменьшить размер окна браузера по ширине - на первом экране должно кое-что броситься в глаза.
    Я вот это увидел. Мне не понравилось.
    rdaCkvI6lng.jpg?size=1019x991&quality=96&sign=31a23406ec46f82b7daeaafa2e868c9e&type=album

    Ну и качество вырезанной вампирши оставляет желать лучшего.
    Ответ написан
  • Как можно перевести сайт на wordpress. В файлах темы?

    @lolzqq
    HTML,CSS,JS,PHP
    самописно это выглядит примерно так:
    - в functions.php темы прописываете функцию, определяющую язык страницы (можно организовать по поиску поддомена в текущем url, по поиску папки в url страницы, по параметрам GET или POST запроса, по языку браузера пользователя через $_SERVER["HTTP_ACCEPT_LANGUAGE"])
    - в шаблонах темы, где выводятся ваши поля используете эту функцию-определитель языка и выводите данные из бд на нужном языке, используя url нужной статьи. (например создать страницу вашсайт.ру/articles/skovorodki-ru, рассказывающую про сковородки на русском языке и создать её клон, но уже с url вашсайт.ру/articles/skovorodki-en для английского языка )
    - для дефолтных элементов wordpress, woocommerce и других плагинов, выводящих текст замену текста производить с помощью фильтров

    встроенным функционалом wordpress-multisite:
    - как это включить: кодекс вордпресс
    - как это работает: фактически вы создаёте пустые клоны своего основного сайта, крепящиеся или к поддоменам или к подпапкам. У клонов будет общий дизайн, общие плагины и общая база данных пользователей (общая авторизация на всех сайтах сети) и никакого контента + собственные 6 таблиц в вашей основной бд под контент этого сайта-клона. Весь остальной контент будете сами копировать и переводить вручную или с помощью плагинов.

    плагинами:
    - ищите плагины типа такого multilanguage

    самописный перевод на ajax с помощью javascript:
    - это как самый первый вариант, только перевод будет запрашиваться на стороне клиента у сервера, полученные переведённые строки будут расставляться средствами javascript в нужные вам элементы страницы без перезагрузки страницы.
    Ответ написан
    2 комментария
  • Как избавиться от множественного повторения forEach?

    @lolzqq
    HTML,CSS,JS,PHP
    godsplane, на своём опыте столкнулся с тем, что назначать, к примеру прослушиватели события click() на 250 элементов при загрузке страницы - это подвешивать её на 10-15 секунд в небытие
    Подвешивайте событие на <body>, а в обработчик передаёте нажатый элемент, распознаёте его, и, если был нажат нужный элемент - то делаете что-то дальше - фактически вешается один прослушиватель, никаких подвисонов, лагов и forEach для этого.

    Код, типа такого:
    document.querySelector('body').addEventListener('click', function(e) {
       // e.target кликабельный элемент
       // определяем, необходимый ли это эелемент
       if(e.target && (e.target.className.search('needed-element')!== -1){
          // тут работаем дальше с e.target или чем хотите
       }
    }


    P.S. при зажатии ЛКМ на кнопке Открывать - попап сворачивается, а если отпустить ЛКМ - снова разворачивается. Это баг или фича?
    Ответ написан
    6 комментариев
  • Как сделать только четные буквы заглавными?

    @lolzqq
    HTML,CSS,JS,PHP
    В этой части кода
    foreach($wordarr as $ltr) {
        if (rand(0,1) == 1) {
            $word .= $ltr;
        } else {
            $word .=strtoupper($ltr);
        }
    }

    Так сделать:
    $flag=-1;
    foreach($wordarr as $ltr) {
       if($flag==-1){
            $word .= $ltr;
       }else{
            $word .=strtoupper($ltr);
       }
       $flag=$flag*(-1);
    }
    Ответ написан
    1 комментарий
  • Как отобразить в теге img изображение возвращаемое Ajax запросом?

    @lolzqq
    HTML,CSS,JS,PHP
    - можете по get запросу с нужными вам параметрами каждый раз генерить картинку php скриптом библиотекой gd
    - с помощью скрипта, который обрабатывает ajax - отдавать url на скрипт генерящий картинку
    - получив в ответе этот url - вставляете его, как аттрибут src тега img - картинка прогружается с сервера

    альтернативно, если у вас есть просто набор готовых картинок
    - скрипт, который обрабатывает ваш ajax запрос - отдаёт url нужной картинки
    - получив в ответе этот url - вставляете его, как аттрибут src тега img - картинка прогружается с сервера

    На js добавление картинки в канвас проделать можно так:
    var canvas=document.querySelector('#canvas');
    var img = new Image();
    img.src = "face.jpg";
    img.onload = function() {canvas.drawImage(img, 10, 10);}
    Ответ написан
    3 комментария
  • Как во время скрола скрыть черный блок?

    @lolzqq
    HTML,CSS,JS,PHP
    С помощью Intersection Observer API
    Ответ написан
    Комментировать
  • Как разместить несколько блоков рядом по горизонтали css?

    @lolzqq
    HTML,CSS,JS,PHP
    display: inline-block;
    Ответ написан
    Комментировать
  • Как сделать динамический select?

    @lolzqq
    HTML,CSS,JS,PHP
    В поиск codepen.io бы вбили dynamic select и нашли вот это https://codepen.io/jtaylor025/pen/WvVzWV
    Ответ написан
    Комментировать
  • Событие Change нужно сделать зависимые списки, и при выборе последнего должна выдаваться разная цена, как это сделать?

    @lolzqq
    HTML,CSS,JS,PHP
    Не знаю, должна ли быть связь между кол-вом комнат и площадью, при выборе именно площади - стоимости выдаёт разные, соответственно придуманным мной тарифам. Количество комнат в этом примере не учитывается.

    Код закомментировал, где в него влез и что-то переписал/добавил
    <!doctype html>
    <html lang="ru">
    <head>
      <meta charset="utf-8" />
      <title></title>
    
    </head>
    
    <body>
    <div class="select-locations select">
       <label for="location" class="location-label">Расположение</label>
    	<select class="select-street select-location" name="select-street" id="select-street" required>
    		<option value="sunny" selected="selected">ул.Солнечная</option>
    		<option value="kobceva">ул.Кобцева</option>
    		<option value="gagarina">ул.Гагарина</option>
    	</select>
    </div>
    <br>
    <div class="amount select area" id="input-select">
    	<label for="amount">Количество комнат</label>
    		<select class="select-room select-layout" name="select-room" id="select-room" required>
    			<option value="1">1</option>
    			<option value="2">2</option>
    			<option value="3">3</option>
    		</select>                       
    </div>
    <div class="layout-flat select">
    	<label for="layout">Общая площадь</label>
    	<select class="select-area area-block" name="select-area2" id="select-area" required>
    		
    	</select>
    <h3 class="last-price select">Цена <span class="price"></span></h3>
    </body>
    <script>
    function selectStreet(room,rooms){
      room.innerHTML = "";
      var c = this.value || "sunny", o;
      for(let i = 0; i < rooms[c].length; i++){
        o = new Option(rooms[c][i],i,false,false);
        room.add(o);
      };
    }
    function selectRoom(area,areas){
      area.innerHTML = "";
      var c = this.value || 1, o;
      for(let i = 0; i < areas[c].length; i++){
    	  // эту строчку модернизировал, чтобы в атрибут value выводилась площадь квартиры
        o = new Option(areas[c][i],areas[c][i],false,false); 
        area.add(o);
      };
    }
    function showPrice(tariffs,street,area){
    	// модифицировал вашу функцию
    	const selectElement = document.querySelector('.select-area');
    	
    	
    	selectElement.addEventListener('change', (event) => {
    		var street_option=street.value; // получаем значение улицы
    		var area_option=area.value; // получаем площадь квартиры
    		var tariff=tariffs[street_option]; // выбираем тариф
    		var cost=area_option*tariff; // перемножаем площадь квартиры на тариф
    	  
    	  const result = document.querySelector('.price');
    	  // вставляем вычисленную цену в '.price'
    	  result.textContent = cost;
    	});	
    }
    
    document.addEventListener("DOMContentLoaded", function(){
    	var	rooms = {
    	  sunny: ["1", "2", "3"],
    	  kobceva: ["1", "2", "3"],
    	  gagarina: ["1", "2"]
    	};
    	var	areas = {
    	  1: ["41.27", "46.96", "48.31"],
    	  2: ["68.33", "69.64", "70.97", "72.39"],
    	  3: ["67.31", "67.60","86.23", "94.54"]
    	};
    	// поскольку вы не указали, какой будет алгоритм расчёта цен,
    	// я решил, что это будут тарифы, зависящие от улицы
            // при желании, можете усложнить структуру и прописать свою цену для каждого набора квартир
            // тогда и в функции showPrice() нужно будет побольше факторов учитывать
            // в строке var tariff=tariffs[street_option]; // выбираем тариф - навигация будет иметь больше [ ] скобок
    	var tariffs = {
    		sunny: 100, // для улицы sunny квадратный метр стоит 100 ед.
    		kobceva: 200, // для улицы kobceva квадратный метр стоит 200 ед.
    		gagarina: 300 // для улицы gagarina квадратный метр стоит 300 ед.
    	}
    	var	street = document.getElementById("select-street");
    	var	room = document.querySelector("#select-room");
    	var	area = document.querySelector("#select-area");
    	selectStreet(room,rooms);
    	selectRoom(area,areas);
    	
    	street.addEventListener('change',selectStreet(room,rooms))
    	room.addEventListener('change',selectRoom(area,areas))
    	
    	showPrice(tariffs,street,area);
    
    	
    })
    
    </script>
    </html>
    Ответ написан
    3 комментария
  • Как написать регулярку на допуск только цифр и точек?

    @lolzqq
    HTML,CSS,JS,PHP
    [0-9\.]{1,} + сравнить длину найденной строки с длиной всей введённой строки - если различаются - значит есть что-то лишнее
    Ответ написан
    Комментировать
  • Как сделать слайдер динамичным на wordpress?

    @lolzqq
    HTML,CSS,JS,PHP
    Если url картинок в любой момент может быть разным, то вам надо что-то вроде этого:
    На сервере размещаете php-скрипт, типа такого:
    // массив с URL картинок - на вашем сервере или не на вашем, вам решать - либо иной способ получения/перемешивания порядка картинок
    $images=['https://вашсайт.ру/gallery/название_картинки_1.jpg','https://вашсайт.ру/gallery/название_картинки_2.jpg',...'https://вашсайт.ру/gallery/название_картинки_N.jpg'];
    // проверяем пришёл ли корректный POST-запрос на картинку
    // будем считать корректным запрос в виде пары image=целое число
    if(isset($_POST[image']){ // если $_POST['image'] передан
          if(strlen($_POST['image'])>0){ // если в $_POST['image'] не пустое значение
                if(gettype($_POST['image']=="integer"){ // если это целое число
                      if($_POST['image']>=0 && $_POST['image']<=count($images)-1){ // и оно в диапазоне от 0 и до последнего ключа массива $images
                          echo $images[$_POST['image']]; // выводим URL нужной картинки в файл
                      }
                }
          }
    }


    На клиенте вам понадобится javascript, который посылает ajax-запрос к вышеупомянутому php-скрипту на сервере при начале перемещения слайда в область видимости пользователя - получает строчку с адресом картинки и вставляет её в аттрибут src тега img, либо задаёт фоновую картинку через изменение стиля background-image.

    Если набор картинок статичный и не меняется с течением времени - то вам нужно сделать "отложенную" загрузку изображений.
    Ответ написан
    1 комментарий
  • Как сверстать блок картинок?

    @lolzqq
    HTML,CSS,JS,PHP
    Верстать. На HTML и CSS. В чём сложность то?
    Ответ написан
  • Как понять достоин ли ты более лучшей зар.платы или ещё не дорос и не надо высовываться даже?

    @lolzqq
    HTML,CSS,JS,PHP
    Уверенности в себе не хватает. И страх мешает. Сами же ответили.
    Ответ написан
    Комментировать
  • Как сделать такой же блок?

    @lolzqq
    HTML,CSS,JS,PHP
    https://html5book.ru/css-figury/

    .d3 {
    width: 0; 
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-bottom: 100px solid #24375B;
    }
    Ответ написан
  • Как отправить много значений в jQuery?

    @lolzqq
    HTML,CSS,JS,PHP
    в одну строку объедините $text=sdhajgdj&num=23123&...
    Ответ написан
    Комментировать
  • Datatables как указывать страницу?

    @lolzqq
    HTML,CSS,JS,PHP
    вызвать click() по
    <a class="paginate_button " aria-controls="example" data-dt-idx="3" tabindex="0">3</a>
    Ответ написан
    Комментировать
  • Как правильно написать слайдер для видео?

    @lolzqq
    HTML,CSS,JS,PHP
    грузите одно так, как показали в коде нам, замеряете на js размеры блока
    остальные грузите также, только вместо
    <video class="video" playsinline autoplay muted loop>
                  <source
                    src="assets/video/fall.mp4"
                    type="video/mp4">
                </video>

    оставьте заглушку-картинку для начала с теми же размерами, как и для первого слайда с видосом
    Ответ написан
    Комментировать
  • Почему верстальщики хотят верстать из .psd и не хотят Фигму? Что можно им предложить?

    @lolzqq
    HTML,CSS,JS,PHP
    Люди привыкли работать с photoshop. Пока нейронные связи в мозгу новые сформируются при обучении работы с figma - пройдёт время, а всё это время верстальшики будут тормозить процесс.
    Ответ написан
  • Кто знает как делать такие анимации?

    @lolzqq
    HTML,CSS,JS,PHP
    Простые без затей на css

    Сложные уже на three.js
    Ответ написан
    4 комментария