Как запустить этот код jquery только до и после определенного размера экрана?

#javascript #jquery #jquery-plugins

#javascript #jquery #jquery-плагины

Вопрос:

У меня есть этот код jQuery

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script>
$( document ).ready( function() {
                var $body = $('body'); //Cache this for performance

                var setBodyScale = function() {
                    var scaleFactor = 0.35,
                        scaleSource = $body.width(),
                        maxScale = 600,
                        minScale = 30;

                    var fontSize = scaleSource * scaleFactor; //Multiply the width of the body by the scaling factor:

                    if (fontSize > maxScale) fontSize = maxScale;
                    if (fontSize < minScale) fontSize = minScale; //Enforce the minimum and maximums

                    $('body').css('font-size', fontSize   '%');
                }

                $(window).resize(function(){
                    setBodyScale();
                });

                //Fire it when the page first loads:
                setBodyScale();
            });
</script>
  

Но я хочу активировать этот код jQuery, только если @media only screen and (min-width : 1025px) and (max-width : 2048px) не после этого и не до этого.

до 1024px и после 2048px скрипт ничего не должен делать.

Ответ №1:

Я не думаю, что возможно получить конфигурацию @media из javascript.

Что вы можете, так это получить ширину документа и проверить его значение:

 var docWidth = $(document).width();
if (docWidth > 1024 amp;amp; docWidth < 2048) {
    // execute your function
}
  

Я не знаю, требуется ли это, но если пользователь изменяет размер окна, вам также может потребоваться привязка к событию изменения размера:

 $(window).resize(function(event) {
    //execute your function
});
  

d.

Ответ №2:

Используйте событие изменения размера jquery :

 $(window).resize(function() {

  // Check here the width
  width = $(document).width();

  if (width > 1024 amp;amp; width < 2048) {

      // do your code
   }
});
  

Я думаю, вы можете делать с этим все, что хотите