Jquery для изменения в зависимости от ширины браузера

Я хочу, чтобы тег Div был пустым, если ширина браузера> 760 пикселей и меньше 980 пикселей, но похоже, что я делаю что-то не так

    (function($){

  //detect the width on page load
  $(document).ready(function(){

    var current_width = $(window).width();
     //do something with the width value here!
    if(current_width < 980 && current_width > 760){
       $('#chwd').empty();
    }
  });

  //update the width value when the browser is resized (useful for devices which switch from portrait to landscape)
  $(window).resize(function(){
    var current_width = $(window).width();
   //do something with the width value here!

    if(current_width < 980 && current_width > 760  ){
         $('#chwd').empty();
    }
    else{
        $('#chwd').html(

<div id="ahead">
<div class="column">
Cash On Delivery
</div>
</div>

        );}
  });

})(jQuery);

Любая помощь будет оценена

Thanx

4 ответа

Решение

Ваш сценарий в порядке, проблема заключается в том, как вы создаете $('#chwd').html()

Javascript обрабатывает новую строку по-разному. В отличие от PHP или другого языка, который позволяет вам продолжать вводить новую строку, пока она заключена в кавычки / одинарные кавычки. В Javascript каждый раз, когда вы создаете новую строку, вам придется заключать ее в '' и + (см. Мой код)

Это приемлемо

'Lorem' +
'Ipsum'

Это не приемлемо

'Lorem
 Ipsum'

Попробуй это:

 (function($){

  //detect the width on page load
  $(document).ready(function(){

    var current_width = $(window).width();
     //do something with the width value here!
    if(current_width < 980 && current_width > 760){
       $('#chwd').empty();
    }
  });

  //update the width value when the browser is resized (useful for devices which switch from portrait to landscape)
  $(window).resize(function(){
    var current_width = $(window).width();
   //do something with the width value here!

    if(current_width < 980 && current_width > 760  ){
         $('#chwd').empty();
    }
    else{
        $('#chwd').html('<div id="ahead">'+
'<div class="column">'+
'Cash On Delivery'+
'</div>'+
'</div>');
    }
  });

})(jQuery);

Изменить вас еще на это:

else{
   $('#chwd').html('<div id="ahead"><div class="column">Cash On Delivery</div></div>');
}

Попробуйте это в другом утверждении:

else
{
    var divString = '<div id="ahead"><div class="column">'+
                    'Cash On Delivery'+
                    '</div></div>';
    $('#chwd').html(divString);
}

Надеюсь это поможет.

Использование outerWidth вместо width, это включает отступы и границу. Вы также должны обернуть divв "" иначе html() будет предполагать, что это переменная.

Другие вопросы по тегам