折叠时向下移动按钮展开

时间:2012-07-27 21:53:23

标签: jquery html css

所以我有代码让我的列表下拉并备份。现在我希望按钮可以同时使用它。我设法把它搞定了,但备份不太好。我试图在列表的公共div中添加按钮,但它没有工作,因为点击时间后按钮消失了。所以我真的想让它尽可能的风格,如果可能的话,添加慢动作效果和加载效果会很棒。

这里是代码

HTML

<div id="right-column-sidebar">
    <ol>
        <li><a href="#">Title 1</a></li>
        <li><a href="#">Title 2</a></li>
        <li><a href="#">Title 3</a></li>
        <li><a href="#">Title 4</a></li>
        <li><a href="#">Title 5</a></li>
        <li><a href="#">Title 6</a></li>
        <li><a href="#">Title 7</a></li>
        <li><a href="#">Title 8</a></li>
        <li><a href="#">Title 9</a></li>
        <li><a href="#">Title 10</a></li>
        <li><a href="#">Title 11</a></li>
        <li><a href="#">Title 12</a></li>
        <li><a href="#">Title 13</a></li>
        <li><a href="#">Title 14</a></li>
        <li><a href="#">Title 15</a></li>
        <li><a href="#">Title 16</a></li>
        <li><a href="#">Title 17</a></li>
        <li><a href="#">Title 18</a></li>
        <li><a href="#">Title 19</a></li>
        <li><a href="#">Title 20</a></li>
    </ol>
</div>

CSS

div#right-column-sidebar{
    position: absolute; 
    right: -140px;
}

div#right-column-sidebar ol{
    position:absolute; 
    right: 150px;
    margin: 10px 0 10px 10px;
    font-size: 20px;
    color: red;
    list-style-type:none
}

div#right-column-sidebar ol li {
    list-style-type:none;
    margin: 10px 0 10px 0; 
    border-bottom: 1px dotted grey; 
    width: 200px; display: block;
}

div#right-column-sidebar ol li a{
    font-size: 60%; color: blue;margin-left: 20px
}
div#right-column-sidebar ol li:nth-child(11){
    margin-left:0;
}      
div#right-column-sidebar ol li a:hover{
    text-decoration: underline;
}

a.button {
    border: 1px solid lightgrey;no-repeat scroll top right;
    color: #444;
    display: block;
    float: left;
    font: normal 12px arial, sans-serif;
    height: 24px;
    margin-right: 6px;
    padding-right: 18px; /* sliding doors padding */
    text-decoration: none;
}

a.button span {
    display: block;
    line-height: 14px;
    padding: 5px 0 5px 18px;
}

Jquery的

$(function(){
    $('div#right-column-sidebar ol li:gt(9)').hide();
    $('a.button').click( function() { 
        $('div#right-column-sidebar ol li:gt(9)').toggle(); 
        $('a.button').addClass('change-height');
    });
});

1 个答案:

答案 0 :(得分:0)

你想要类似的东西 - http://jsfiddle.net/7CxG8/吗?

我从position: absolute移除了ol,以便按钮了解/回复ol的尺寸更改。

要获得“慢动作效果”,你可以传递一个数字作为jquerys toggle函数(3000 = 3s)的参数 - 它可以工作,但它不是你能得到的最佳效果。我通常使用css过渡/动画创建自己的效果。