Решение на jQuery для выделения и увеличения объектов на фотографии при заходе на них курсора мыши или нажатии в мобильном варианте.

Данным способом можно понятно и красиво выделить людей на групповом фото или, например, отметить элементы какого-нибудь строения.

Пример:

HTML:

Где:

data-x и data-y - координаты в процентах X и Y центра объекта, который будет увеличиваться. Определить их можно на глаз или, например, в конструкторе Clip-Path поставив точку в нужное место и взяв ее координаты.

data-w и data-h - ширина и высота окна в процентах, которое будет выделяться. Определяется также на глаз, чтобы уместилось все необходимое. Если задать значение высоты 0, она будет равной ширине в нужной пропорции, чтобы получить квадрат.

data-r - радиус закругления краев обьекта в точках, аналогичный border-radius

CSS:

jQuery:

Смотрите также:

Вариант создания трехмерной композиции из нескольких картинок наложенных на фоновое изображение

Скрипт splitpic.js для смены мышкой одной фотографии на другую

Примеры создания ховер эффектов, используя наложенные друг на друга одинаковые изображения

Добавить комментарий:

Ваш комментарий отправлен!

Комментарии:

  • Антон:

    А зачем указывать все значения в процентах, когда намного удобнее в пикселях?

    Ответить
    • Alexander:

      У нас ширина картинки 100% относительно родителя.
      Если по точкам, то на десктопе она одна, на мобилках другая

      Ответить
      • Сергей:

        Это вариант для компа. На мобильных все равно раком. Координаты нужно привязывать к фото.

        Ответить
        • Alexander:

          Координаты нужно везде привязывать, а на мобилу клик нужен, а не ховер

          Ответить
          • Сергей:

            Если подточить, работает и на мобильном нормально. Только не понятно, почему ширина 100%, а не высота? А если фото вертикальное?

            Ответить
            • Alexander:

              И высота 100%, в зависимости от ширины.
              А ширина должна быть 100%, т.к. контейнер всегда разный, в зависимости от колонок и размера экрана.

              Ответить