• Как поставить высоту блока div в зависимость от ширины?

    iusfof
    @iusfof
    Front-end developer
    если использовать jQuery

    $(function(){
      $('.some_block').height($('.some_block').width()/2.5);
    
      $(window).resize(function(){
        $('.some_block').height($('.some_block').width()/2.5);
      });
    });


    codepen.io/iusfof/pen/FxoBJ
    Ответ написан
    Комментировать
  • Как в wordpresse сделать проверку на заполнение произвольного поля?

    @mais64
    Фронтенд разработчик
    Hiding empty fields

    <?php if( get_field('field_name') ): ?>
    	<p>My field value: <?php the_field('field_name'); ?></p>
    <?php endif; ?>
    Ответ написан
    1 комментарий
  • Как в Swiper Js изменить значение параметра slidesPerView в разных размерах браузера?

    F-l-e-m
    @F-l-e-m
    Frontend developer
    Свойство breakpoints
    var swiper = new Swiper('.swiper-container', {
      // Default parameters
      slidesPerView: 1,
      spaceBetween: 10,
      // Responsive breakpoints
      breakpoints: {
        // when window width is >= 320px
        320: {
          slidesPerView: 2,
          spaceBetween: 20
        },
        // when window width is >= 480px
        480: {
          slidesPerView: 3,
          spaceBetween: 30
        },
        // when window width is >= 640px
        640: {
          slidesPerView: 4,
          spaceBetween: 40
        }
      }
    })
    Ответ написан
    Комментировать
  • Как центрировать transform: scale при position: absolute?

    JRK_DV
    @JRK_DV
    Рецепты https://codepen.io/jrkdv/full/LKLXdq
    вы при ховере переопределяете transform
    &:hover {
      transform: translate(-50%, -50%) scale(1.5);
    }
    Ответ написан
    1 комментарий
  • Как поместить php внутри echo?

    @generate
    ...
    <?
     $cnt = $counts[$arProps[3]['VALUE']] - 1;
                 if($cnt >= 1){
    echo <<<HTML
                
        <div class=" calendar__day-more--wrap">
          <a class="calendar__day-more" href="{$arProps[3]['VALUE']}">
    
    
              "Еще " {$cnt}
    
    
    
          </a>
    </div>
                
                
    HTML;
                   }
    
    ?>


    Второй способ
    echo '
                
        <div class=" calendar__day-more--wrap">
          <a class="calendar__day-more" href="' .  $arProps[3]['VALUE'].  '">
    
    
              "Еще " '.  $cnt. '
    
    
    
          </a>
    </div>
                
                
    ';


    Просто нужно внутри echo закрывать строку и вставлять перменную
    echo 'Строка'. $переменная. 'строка';
    Ответ написан
    1 комментарий
  • Как центрировать after и before?

    @as_viper
    Начинающий веб-разработчик
    Задайте для after и before,
    width: 100%
    left: 50%
    transform: translateX(-50%)
    Ответ написан
    6 комментариев
  • Как частично скруглить картинку с помощью css?

    @Lord_Dantes
    Через border-radius, не получится скорей всего. Нужен clip-path
    https://bennettfeely.com/clippy/
    Ответ написан
    Комментировать
  • Как частично скруглить картинку с помощью css?

    artzolin
    @artzolin
    php, WordPress разработка сайтов artzolin.ru
    Кстати, это вполне реально, border-radius принимает 8 значений. 35% - это горизонтальный отступ слева сверху и снизу

    border-radius: 35% 0% 0% 35% / 50% 0% 0% 50%

    Тут есть демо (нажать full-control) и на css-tricks хорошие примеры
    Ответ написан
    1 комментарий
  • Какой выбрать современный хороший учебник по C++?

    TrueBers
    @TrueBers
    Гуглю за еду
    То есть сухое краткое структурированное изложение стандарта на русском

    Стандарт учить не нужно. Учить стандарт и учить С++ это 2 разных измерения. Стандарт учат те, кто пишет компиляторы, а прикладному разработчику достаточно знать о его существовании, где его найти в случае какого-то глобального непонимания и недостатка информации в других источниках. Не запаривайтесь ни на каком стандарте, это абсолютно бесполезная трата времени вначале.

    Поменьше воды типа "в старом стандарте было иначе, а именно вот как".

    Без этого никак, новый стандарт никак не отменяет старый. Есть в языке такие фичи, которые добавили в 11 стандарте, а в 14-м уже объявили miss-conception и deprecated, а в 17-м вообще удалили. Поэтому знать, что было в старых стандартах просто необходимо для понимания, почему так происходит.

    Сейчас C++ в таком состоянии, что книги по нему не успевают выходить, как всё меняется. Сейчас столько источников информации, что каждый день выходит миллион статей от официальных лиц комитета. Подпишитесь на ютубе на официальные каналы, на RSS фиды, на блоги не последних людей комитета. Мне сейчас в RSS приходит каждый день столько, что, когда работал в офисе, успевал во время дороги в офис читать по-диагонали лишь основную мысль. Сейчас работаю дома, и ничего не успеваю. Подпишитесь на CppCon, BoostCon, ISOCpp, Скотта Мейерса, Андрея Александреску, Герба Саттера, Бьёрна Страуструпа. Библиотека Boost служит, по сути, испытательным полигоном для стандарта, так что советую и её начать использовать сразу же вместе с основным стандартом. Ознакомьтесь также с Core Guidelines, это как бы набор костылей для вещей, которых пока нет в стандарте, но которые всем необходимы и будут скоро добавлены.

    Книги же, по современному языку, рассчитаны, так или иначе, на тех, кто уже знает старый язык, бессмысленно писать новые книги с нуля, проще описать, что изменилось. Из более-менее полезного материала, читайте Скотта Мейерса Effective Modern C++: 42 Specific Ways to Improve ..., Anthony Williams C++ Concurrency in Action: Practical Multithreading, ну и вышеперечисленных.
    Ответ написан
    Комментировать
  • Как сделать кнопку неактивной пока не заполнены поля и не отмечены чекбоксы?

    twobomb
    @twobomb
    Ну добавь все проверки в свой checkParams, и повесь на чекбоксы onchange="checkParams()"
    function checkParams() {
                var name = $('#name').val();
                var email = $('#email').val();
                var phone = $('#phone').val();
                if(name.length != 0 && email.length != 0 && phone.length != 0 && $('#personaldata').prop("checked") && ($('#cakecheck').prop("checked") || $('#drinkcheck').prop("checked")))
                    $('#submit').removeAttr('disabled');
                 else 
                    $('#submit').attr('disabled', 'disabled');
            }
    Ответ написан
    Комментировать
  • Как убрать элемент с яндекс.карт?

    forgotten
    @forgotten
    Руководитель разработки API Яндекс.Карт
    Выношу из комментов:

    В документации нет removeControl ;)
    Вообще элементы управления удаляются через map.controls.remove('searchControl').
    Но в вашем случае, насколько я понимаю, достаточно задать список нужных контролов прямо в конструкторе карты.
    https://tech.yandex.ru/maps/jsbox/2.1/customSet_co...
    https://tech.yandex.ru/maps/doc/jsapi/2.1/ref/refe...
    Хотя я не очень понимаю, зачем убирать стандартные элементы управления.
    Ответ написан
    1 комментарий
  • Как убрать элемент с яндекс.карт?

    @trefferr
    В инициализации конструктора карт, присваиваешь свойству пустой массив.
    controls: []
    ymaps.ready(function(){
            moscow_map = new ymaps.Map("banner_map", {
                center: [56.34820425, 41.30735193],
                controls: [],
                zoom: 17
            });
    Ответ написан
    Комментировать
  • Как загружать яндекс карту с адресом из доп.поля?

    Вот есть код прямого геокодирования в песочнице яндекс ссылка

    Необходимо его совсем немного доработать, что бы из вашего произвольного поля данные подставлялись в параметр ymaps.geocode файла direct_geocode.js

    как передать переменную (в вашем случае адрес из произвольного поля) в файл js описано тут

    UPD 17:15
    самому стало интересно, как это реализовать, и вот результат

    В файлы где выводим карту пишем:
    <?php
    $adress = '<?php echo $adress[0];?>';       // получаем значение переменной
    ?>

    тут $adress - изменяете на свою переменную

    Далее пишем следующее
    <script>
          //Определяется переменная, которая будет доступна для 
          // всех JavaScript, подключаемых на данной странице
          var js_ad = '<?php echo $adress; ?>';
     </script>


    Подключаем скрипт карт
    <script src="//api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>


    Подключаем наш файл со скриптом direct_geocode.js
    в файле direct_geocode.js происходит обращение к переменной js_ad.

    <script src="<?php echo get_template_directory_uri() ?>/page-templates/js/direct_geocode.js" type="text/javascript"></script>

    не забудьте поменять путь до вашего файла

    Делаем вывод самой карты в нужном нам месте на странице
    <div id="map" style="width:100%; height:200px;"></div>


    А вот код нашего скрипта direct_geocode.js
    ymaps.ready(init);
    
    function init() {
        var myMap = new ymaps.Map('map', {
            center: [55.753994, 37.622093],    // поменяйте местоположение центрирования карты, можно воспользоваться сервисом https://constructor.maps.yandex.ru/location-tool/
            zoom: 9
        });
    
        // Поиск координат центра значения нашей переменной js_ad.
        ymaps.geocode(js_ad, {
            /**
             * Опции запроса
             * @see https://api.yandex.ru/maps/doc/jsapi/2.1/ref/reference/geocode.xml
             */
            // Сортировка результатов от центра окна карты.
            // boundedBy: myMap.getBounds(),
            // strictBounds: true,
            // Вместе с опцией boundedBy будет искать строго внутри области, указанной в boundedBy.
            // Если нужен только один результат, экономим трафик пользователей.
            results: 1
        }).then(function (res) {
                // Выбираем первый результат геокодирования.
                var firstGeoObject = res.geoObjects.get(0),
                    // Координаты геообъекта.
                    coords = firstGeoObject.geometry.getCoordinates(),
                    // Область видимости геообъекта.
                    bounds = firstGeoObject.properties.get('boundedBy');
    
                // Добавляем первый найденный геообъект на карту.
                myMap.geoObjects.add(firstGeoObject);
                // Масштабируем карту на область видимости геообъекта.
                myMap.setBounds(bounds, {
                    // Проверяем наличие тайлов на данном масштабе.
                    checkZoomRange: true
                });
    
                /**
                 * Все данные в виде javascript-объекта.
                 */
                console.log('Все данные геообъекта: ', firstGeoObject.properties.getAll());
                /**
                 * Метаданные запроса и ответа геокодера.
                 * @see https://api.yandex.ru/maps/doc/geocoder/desc/reference/GeocoderResponseMetaData.xml
                 */
                console.log('Метаданные ответа геокодера: ', res.metaData);
                /**
                 * Метаданные геокодера, возвращаемые для найденного объекта.
                 * @see https://api.yandex.ru/maps/doc/geocoder/desc/reference/GeocoderMetaData.xml
                 */
                console.log('Метаданные геокодера: ', firstGeoObject.properties.get('metaDataProperty.GeocoderMetaData'));
                /**
                 * Точность ответа (precision) возвращается только для домов.
                 * @see https://api.yandex.ru/maps/doc/geocoder/desc/reference/precision.xml
                 */
                console.log('precision', firstGeoObject.properties.get('metaDataProperty.GeocoderMetaData.precision'));
                /**
                 * Тип найденного объекта (kind).
                 * @see https://api.yandex.ru/maps/doc/geocoder/desc/reference/kind.xml
                 */
                console.log('Тип геообъекта: %s', firstGeoObject.properties.get('metaDataProperty.GeocoderMetaData.kind'));
                console.log('Название объекта: %s', firstGeoObject.properties.get('name'));
                console.log('Описание объекта: %s', firstGeoObject.properties.get('description'));
                console.log('Полное описание объекта: %s', firstGeoObject.properties.get('text'));
    
                /**
                 * Если нужно добавить по найденным геокодером координатам метку со своими стилями и контентом балуна, создаем новую метку по координатам найденной и добавляем ее на карту вместо найденной.
                 */
                /**
                 var myPlacemark = new ymaps.Placemark(coords, {
                 iconContent: 'моя метка',
                 balloonContent: 'Содержимое балуна <strong>моей метки</strong>'
                 }, {
                 preset: 'islands#violetStretchyIcon'
                 });
    
                 myMap.geoObjects.add(myPlacemark);
                 */
            });
    }


    Собственно на этом все :)

    UPD на основе комментария:
    тут пишешь так
    <?php
    $address = get_the_title(); // подставляет текст из тайтла
    ?>

    а тут так
    <script>
          //Определяется переменная, которая будет доступна для 
          // всех JavaScript, подключаемых на данной странице. ПОДСТАВЛЯЕМ город
          var js_ad = 'Казань, <?php echo $adress; ?>';
     </script>
    Ответ написан
  • Как разместить табличку с текстом и графикой поверх Яндекс.Карт API

    @Alwake
    Должно помочь следующее:
    У контейнера Яндекс-карт установлен z-index равный 1. Просто установите значение больше (например, z-index: 500) и укажите абсолютную позицию (position: absolute) вашей легенды. Ну а потом устанавливайте позицию легенды при помощи свойств left и top.
    Ответ написан
    3 комментария