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()
будет предполагать, что это переменная.