2013-07-15 3 views
0

Я попытался скрыть DIV с JQuery с помощью следующего кода:Я хочу, чтобы скрыть DIV с помощью изменения размеров окна

$(window).resize(function(){ 
    if (window.innerHeight < 750) { 
    $("footer").animate({'height' : '0px'}, 500); 
    } 
    if (window.innerHeight > 750) { 
    $("footer").animate({'height' : '35px'}, 500); 
    } 
}); 

Я проверил его в Chrome и он работает только один раз. Он исчезает и больше не появляется, изменяя размер.

Есть ошибки в моем коде или является неправильным решением?

Благодарим вас в ожидании!

+1

Желаете ли вы только решения JS или открыты для медиа-запросов? –

+1

Событие изменения размера постоянно увеличивается, поэтому анимация на самом деле не справляется. – adeneo

ответ

1

Легкий способ заключается в использовании медиа-запрос: https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries

Например, если у вас есть идентификатор #divOne, вы стиль в DIV, как обычно и добавить отдельный медиа-запрос, как display: none;, когда окно стягивается указанная ширина. В этом случае, ДИВ скрывает, когда ширина окна ниже 600px:

#divOne {display: block; height: 200px; background: #000; } 

@media (max-width: 600px) { 
    #divOne { 
    display: none; 
    } 
} 
+0

позвольте мне попробовать :) – Lumoris

+0

работает отлично, спасибо! – Lumoris

+0

Рад помочь. Не стесняйтесь отмечать как правильный ответ. Мне нужен представитель! –

0

Это означает, что это условие if (window.innerHeight > 750) { никогда не выполняющийся, потому что браузер window.innerHeight меньше 750. Для того, чтобы увидеть значение в консоли журнал это так :

console.log(window.innerHeight); 
0

Вот JQuery Реализация:

Предположим, что вы хотите скрыть div1, когда ширина окна меньше 750px и отобразить его снова, если ширина окна г чем ля большей 750px

HTML

<div id="div1"> 
</div> 

CSS

#div1{ 
    width:100%; 
    padding:30px; 
    background:#1d1d1d; 
} 

JQuery

$(window).resize(setDivVisibility); 
function setDivVisibility(){ 
    if (($(window).width()) < '750'){ 
    $('#div1').css('display','none'); 
    } else { 
    $('#div1').css('display','block'); 
    } 
} 

Working jsfiddle:http://jsfiddle.net/a8V9V/

Смежные вопросы