【发布时间】:2013-12-31 16:57:49
【问题描述】:
新年快乐!
我有一个 div,我想通过单击按钮滑入和滑出视图。我希望它相邻的 div 可以无缝地沿着它滑动来代替它。目前相邻的div不会移动,直到滑动动画完成,然后它以一个笨拙的动作跳到隐藏的div的位置。
我怎样才能让它们一起滑动并隐藏一个而不是另一个?
现在我正在使用 jQuery UI,但也许我应该使用 .animate()?
你会在这里得到我想要做的最好的想法:http://www.redearthtrail.com/img/sampleapi5.php
Here's a jsFiddle 也演示一下:
JS
var state = false;
$("#toggle-slide-button").click(function () {
if (!state) {
$('#map-legend').hide("slide", { direction: "right"}, 1000);
$('#toggle-slide-button img').attr('src', '/img/map-arrow-open.png');
state = true;
}
else {
$('#map-legend').show("slide", { direction: "right"}, 1000);
$('#toggle-slide-button img').attr('src', '/img/map-arrow-close.png');
state = false;
}
});
CSS
#map-legend-control {
width: 50px;
height: 100%;
margin: 0;
padding: 0 20px;
float: right;
background-color: #000;
position: relative;
}
#map-legend {
width: 400px;
height: 100%;
margin: 0;
padding: 0;
float: right;
position: relative;
background-color: #CCC;
-webkit-box-shadow:inset 1px 0 5px 0 rgba(000,000,00,1);
box-shadow:inset 1px 0 5px 0 rgba(000,000,00,1);
}
#map-legend p {
padding-left: 25px;
}
HTML
<div id="map-legend">
<p><strong>Trail Name:</strong></p>
<p id="trail-id">Please select a trail.</p>
<p><strong>Trail Difficulty:</strong></p>
<p id="trail-difficulty">Please select a trail.</p>
<p><strong>Trail Latitude:</strong></p>
<p id="trail-lat">Please select a trail.</p>
<p><strong>Trail Longitude:</strong></p>
<p id="trail-long">Please select a trail.</p>
<p><strong>Trail Thumbnail:</strong></p>
<p id="trail-thumb">Please select a trail.</p>
<div style="position:absolute;bottom:0;">
<p><strong>Trail Sponsor:</strong></p>
<p id="trail-sponsor">Please select a trail.</p>
</div>
</div>
<div id="map-legend-control">
<a href="#" id="toggle-slide-button"><img src="http://www.redearthtrail.com/img/map-arrow-close.png" width="50px" height="50px" /></a>
</div>
感谢您的任何见解!
【问题讨论】:
标签: javascript jquery jquery-ui slider jquery-ui-slider