2013-11-19 2 views
-1

Вот моя структура HTML.jQuery hide/show a div

<div id="head"></div> 
<div id="content"></div> 
<div id="footer"></div> 

Теперь, когда я скрыть content DIV, используя $("#content").hide, мой сноска блок приходит. Я хочу, чтобы мой блок нижнего колонтитула оставался неподвижным внизу, даже если я скрою его или покажу.

Как я могу это сделать?

+0

Почему downvote ??? –

+2

просто установите его положение: зафиксировано; внизу: 0; –

+3

'$ ('# content').css ('visibility', 'hidden') ' – putvande

ответ

2

display: none и visibility: hidden разные.

Если вы выберете display: none, DIV больше не будет занимать пространство, поэтому нижний колонтитул будет поднят.

Таким образом, вы должны использовать (как в @putvande сказал в комментарии):

$('#content').css('visibility','hidden') 

Если вы установите visibility: hidden, то DIV будет скрыта (невидимый), но она по-прежнему занимает пространство, так как его display CSS по умолчанию display: block.

Чтобы снова показать содержимое, установлено:

$('#content').css('visibility','visible') 

Кроме того, обычно сноска использует position: fixed и bottom: 0, чтобы зафиксировать его в нижней части страницы, которая, вероятно, избежать проблемы вы столкнулись прямо сейчас.

+0

И как снова показать содержимое? –

+0

добавлено в ответ, просто используйте значение 'visible' – Raptor

+1

Спасибо. Очень хорошо объяснено. Это сработало. –

0

Вместо шкуры(), используйте:

css('visibility','hidden') 

скрыть() задает стиль отображения непревзойденных, которая полностью удаляет элемент из потока документов и заставляет его не занимают места.

видимость: скрытый сохраняет пространство как есть.

и

вы можете показать, Javacript событие action.For например

<div id="clickme"> 
    Click here 
</div> 
<div id="content"> 
    here is the content div 
</div> 
<script> 
$("#clickme").click(function() { 
    $("#content").show("slow", function() { 
    // Animation complete. 
    }); 
}); 
+0

И как я могу показать содержимое снова? –

0

В приведенном выше сценарии, вы должны написать CSS для колонтитула, как показано ниже,

#footer{ 
    position:absolute; 
    top:150px;  
} 

вас может изменить верх значение свойства согласно вашему требованию.

Пожалуйста, обратитесь ниже JsFiddle ссылку,

http://jsfiddle.net/rrmrX/

0

Попробуйте это -

head {position: fixed;top: 0} 
footer {position: fixed;bottom: 0} 
0

you can use this sytax 
 
$("#idContent).toggle(); 
 
or 
 
you cant write event click after call funtion use it 
 
$("#idContent").hide(); 
 
$("#idContent").show();