我正在开发网络应用程序的原型(prototype)。 在此应用程序中,我的主窗口中有数据,底部有一个托盘,当用户单击选项卡时,托盘可以滑入和滑出。这是一个 fiddle ,演示了我在说什么:http://jsfiddle.net/SetNN/2/ .
HTML:
<div id="DataPane">
<div id="VisibleContainer">
<div class="handle">
</div>
</div>
<div id="InvisibleContainer">
<div class="handle">
</div>
<div class="dataContainer">
</div>
</div>
CSS:
/* DATA PANE */
#DataPane {
position: absolute;
width: 100%;
bottom: 0;
opacity: 0.5;
z-index: 20;
}
#DataPane .handle {
width: 50px;
margin: 0px auto 0px auto;
background-color: #333333;
text-align: center;
cursor: pointer;
-webkit-user-select: none;
box-shadow: 4px 2px 11px rgba(50, 50, 50, 0.75);
}
#DataPane #VisibleContainer .handle {
height: 20px;
color: #ffffff;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
border-bottom-right-radius: 0px;
border-bottom-left-radius: 0px;
}
#DataPane #InvisibleContainer {
display: none;
}
#DataPane #InvisibleContainer .handle {
height: 5px;
box-shadow: 4px 2px 11px rgba(50, 50, 50, 0.75);
}
#DataPane #InvisibleContainer .dataContainer {
width: 99%;
height: 49vh;
margin: 0px auto 0px auto;
background-color: #333333;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
border-bottom-right-radius: 0px;
border-bottom-left-radius: 0px;
box-shadow: 4px 2px 11px rgba(50, 50, 50, 0.75);
}
#DataPane #InvisibleContainer .dataContainer #DataContainer {
position: absolute;
background-color: #ffffff;
}
附带的 javascript
var dataPaneMinimumOpacity;
$(document).ready(function () {
// Initialise variables
dataPaneMinimumOpacity = $("#DataPane").css('opacity');
// Data pane
$("#DataPane .handle").click(function () {
var duration = 600;
var invisibleContainer = $("#DataPane #InvisibleContainer");
if ($(invisibleContainer).is(':visible')) {
// In this case slideup() actually hides the container
$(invisibleContainer).slideUp(duration, function () {
$('#DataPane').fadeTo(duration / 2, dataPaneMinimumOpacity);
});
} else {
$(invisibleContainer).slideDown(duration, function () {
$('#DataPane').fadeTo(duration / 2, 1);
});
}
})
});
与 jquery 1.8.2 一起使用。
客户端很可能会要求它主要在 IE8 中工作...该动画在除 IE8 之外的所有浏览器中都可以正常工作。 在 IE8 中,在切换到 IE8 模式的 IETester 和 Explorer10 中,选项卡会向上移动一点,然后停止。当我再次单击时,它会移回原来的位置。
我缺少什么才能使其在 IE8 中正常工作?
当然,这样做的另一个问题是jsFiddle本身在IE8中不显示...
请您参考如下方法:
这在 IE8 中不起作用,因为高度是以 vh 单位(height: 49vh;) 设置的,IE8 浏览器不支持该单位。如果我们将其更改为 IE8 支持的任何单位,那么它就可以正常工作。
