У меня есть два div, которые я хочу переключаться между ними.
Основной div предназначен для боковой навигации, а также содержит изображение и список меню.
Я могу заставить оба divs переключиться, но содержимое внутри главного div тоже не переключается.
<div class="wide">
<img src="images/logo150.png" width="150" height="90">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Latest News</a></li>
</ul>
</div>
<script>
$( ".wide" ).click(function() {
$( this ).toggleClass( "narrow", 1000, "easeOutSine" );
});
</script>
<style>
html {
margin: 0px;
padding: 0px;
height: 100%;
}
body {
height: 100%;
margin: 0px;
padding: 0px;
background-image: url(load/images/1.jpg);
background-repeat: no-repeat;
background-position: left top;
}
.wide {
width: 150px;
height: 100%;
position: fixed;
z-index: 1000;
min-height: 1000%;
background-color: rgba(0,0,0,0.8);
padding-top: 50px;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
cursor: pointer;
}
.narrow {
width: 50px;
height: 100%;
position: fixed;
z-index: 10;
min-height: 1000%;
padding-top: 50px;
padding-right: 10px;
padding-bottom: 10px;
padding-left: 10px;
cursor: pointer;
background-color: rgba(0,0,0,0.8);
background-image: url(logotop.png);
background-repeat: no-repeat;
background-position: center top;
}
</style>
Любая помощь очень ценится, поскольку я новичок в jQuery и уверен, что это можно сделать.
спасибо
Вы переключаете класс содержащего элемента (.wide) на 50px в ширину, но содержимое (например, img) фиксировано на 150 пикселей, поэтому они будут переполняться.
В классе.narrow вам нужно скрыть это переполнение, используя:
overflow: hidden;
Вам нужно скрыть "переполнение" элемента сокращения с помощью правила CSS.
overflow:hidden; /* Inside .narrow */
См. Здесь: http://jsfiddle.net/jCcg7/3/