CSS div定位和jQuery slideUp疯狂

CSS div定位和jQuery slideUp疯狂,jquery,html,css,slide,Jquery,Html,Css,Slide,已解决查看下面的评论 <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $('#playlistToggle').click(function(event) {

已解决查看下面的评论

<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

<script type="text/javascript">
$(document).ready(function() {

    $('#playlistToggle').click(function(event) {

        event.preventDefault();

        if($('#playlist').is(":hidden"))
        {
            $('#playlist').slideUp('medium');
        }

        else
        {
            $('#playlist').slideDown('medium');
        }

    });

});
</script>

<style type="text/css">
    #playlist_wrapper
    {
        bottom: 30px;
        height: 75px;
        overflow: hidden;
        position: fixed;
        width: 100%;
        background-color: yellow;
    }

        #playlist
        {
            background-color: #FF6633;
            border: 1px solid #666666;
            height: 75px;
            width: 920px;
            position: relative;
            bottom: 0;
            margin: 0 auto;
            visibility: hidden;
        }
</style>

</head>

<a href="#" id="playlistToggle">Toggle Playlist</a>

<div id="playlist_wrapper">
    <div id="playlist"></div>
</div>

$(文档).ready(函数(){
$(“#播放切换”)。单击(函数(事件){
event.preventDefault();
如果($(“#播放列表”)是(“:隐藏”))
{
$(“#播放列表”).slideUp('medium');
}
其他的
{
$(“#播放列表”)。向下滑动(“中等”);
}
});
});
#播放列表包装器
{
底部:30px;
高度:75px;
溢出:隐藏;
位置:固定;
宽度:100%;
背景颜色:黄色;
}
#播放列表
{
背景色:#FF6633;
边框:1px实心#666666;
高度:75px;
宽度:920px;
位置:相对位置;
底部:0;
保证金:0自动;
可见性:隐藏;
}
当您按下按钮时,此脚本应向上滑动播放列表div。然而,当你击中它时,什么也不会发生。如果您更改:

如果($(“#播放列表”)是(“:隐藏”))

致:

如果($(“#播放列表”)为(“:可见”))

将css#playlist visibility属性从“hidden”更改为“display”,然后div向上滑动到顶部,向下滑动到底部,这与我希望它做的完全相反。我做错了什么


编辑:澄清一下:我需要从一开始就隐藏播放列表div,然后在按下切换按钮时向上滑动

.slideUp
.hide
的同义词(尽管对如何获得效果有不同的设置)

同样地

.slideDown
.show

所有4个都只是预设动画

如果您阅读了关于slideUp和slideDown的jQuery文档,它们是这样的:

描述:通过滑动运动隐藏匹配的元素

描述:以滑动方式显示匹配的元素


因此:使用slideDown使内容可见,而不是slideUp

只有在

* They have a CSS display value of none.
* They are form elements with type="hidden".
* Their width and height are explicitly set to 0.
* An ancestor element is hidden, so the element is not shown on the page.

似乎
#playlist
不符合任何这些标准,因此选择器在
#playlist
上不匹配。你能去掉
.is(“:hidden”)
部分而不使用它吗?

如果我在“If”语句中还原函数,它仍然没有任何作用?你不能使用slideDown(show函数)使某些东西从屏幕底部向上滑动,这是你的问题。你必须重新考虑你在做什么。我找到了解决办法。滑动包装而不是播放列表起作用。#播放列表需要从一开始隐藏,然后从底部滑动。除了在css属性中定义播放列表外,我看不到任何其他从一开始就隐藏播放列表的方法