@vvvadimos

Как написать код, который вызывается только на определенном разрешении экрана?

Допустим есть три блока текста, расположенные в одну строку, которые должны быть одинаковы по высоте. Пишу функцию, которая определит максимальную высоту и подставит ее всем блокам. ок. но при ресайзе окна она должна пересчитываться, так как текст уже занимает иное пространство, + на каком-то разрешении с высотой ничего не нужно делать, потому что блоки уже расположены вертикально.
итого у меня код примерно так выглядит:

if(viewportWidth() > 700px){
     setHeight();
}

$(window).resize(function(){
     if(viewportWidth() > 700px){
          setHeight();
     }
});


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

так вот подскажите как сделать все красиво и безбагово (готовые плагины вариант не очень)
  • Вопрос задан
  • 264 просмотра
Пригласить эксперта
Ответы на вопрос 4
FMars
@FMars
Описанная задача решается средствами CSS.
Ответ написан
Комментировать
@shuhratjon
Программист разработчик.
Вот, должно сработать. Работает при загрузке страницы так и при изменения размеры страницы.

function windowSize(){
    if ($(window).width() > 700px){
        Ваш код
    } else {
        Ваш код
    }
}

$(window).on('load resize',windowSize());


Не знаю сработает или нет но, попробуйте вызвать эту функцию сразу после ваших блоков:
<div class="vashiBloki>
</div>
<script type="text/javascript">
function windowSize(){
    if ($(window).width() > 700px){
        Ваш код
    } else {
        Ваш код
    }
}
windowSize() </script>
Ответ написан
@vvvadimos Автор вопроса
да я знаю что такая задача решается cssом, проблема не именно в этой задаче, а в том что есть и другие, где все делается яваскриптом
Ответ написан
werty1001
@werty1001
undefined
Если на CSS не вариант, то что-то типа такого:
$(window).on('load resize', function(e) { setHeight(); });

function setHeight() {
	if($(document).width() < 700) return;
	...
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы