jQuery切换底部div显示在左边而不是右边

时间:2014-03-19 18:13:04

标签: javascript jquery css

我知道这一定是一个简单的解决办法,但我早上花了大部分时间试图寻找解决方案(在发布之前)无济于事。

我有一个非常简单的jQuery" slideToggle"脚本,单击时,将div滑动到按钮底部到我希望它显示的高度。它适合我想要的宽度(400px),从顶部div尺寸(130px)的左侧开始并向右延伸。问题是,我需要它向左伸展(顶部"按钮"设置在页面的最右边,它伸展到页面之外)。 这是我的代码:

  <script src="js/jquery-1.9.1.min.js"></script>
    <script src="js/jquery.easing.1.3.js"></script>
   <style type="text/css">  
    #cartBox {
        width: 110px;
        height: 90px;
        position: absolute;
        margin-left: 90%;
        top: 28px;
        border: 3px solid #800000;
        background-color: #800000;
        border-radius: 12px;
        z-index: 999;
    }
    #cartDropMenu {
        position:absolute;
        z-index:999;
        width: 130px; /* width of  top items (img + text (Cart Items)   */
        float:right;
        top: 0px;
        right: 0px;
        color: white;
        font-family: Arial, Helvetica, Sans serif;
        font-size: 12px;
        text-align: left;
    }
    #cartDropMenu p {
        margin:0;
        padding-left:24px; /* moves text to the left of img */
        cursor:pointer;
        background-image:url('../img/open.png');
        background-position:left; /* positions image to the left or right 300px(cartDropMenu width parameter)   */
        background-repeat:no-repeat;
        text-align: left;    
    }
    #cartDropMenu p.close {
        background-image:url('../img/close.png');
    }
    #DropMenu {
        position:absolute;
        z-index:999;
        background-color:#fff;
        border:solid 1px rgb(220,220,220);
        padding:12px;
        width:400px; /* width of drop down box  */
        box-shadow:1px 1px 4px rgb(220,220,220);
        top:90px; /* position of start point for drop down box  */
        left:8000; /* ???   */
        display:none;
        color: black;
        font-family: Arial, Helvetica, Sans serif;
        font-size: 12px;
    }
   </style>
    <script>
     $(document).ready(function() {
       $('#cartDropMenu p').click(function() {
                $('#DropMenu').slideToggle(300);
                $(this).toggleClass('close');
            });
        }); // end ready
    </script>
</head>
<body>
          <div id="cartBox">        
              <div id="cartDropMenu">
                    <p> &nbsp&nbsp&nbsp&nbsp Display Cart</p>
                    <div id="DropMenu">
                       Test line #1<br />
                       Test line #1<br />
                       Test line #1<br />
                       Test line #1<br />
                       Test line #1<br />
                       Test line #1<br />
                       Test line #1<br />
                       Test line #1<br />
                    </div>     
            </div>
        </div>
    </body>
</html>

这里是jfiddle的链接: enter link description here

2 个答案:

答案 0 :(得分:0)

尝试将right: 0;添加到#DropMenu

答案 1 :(得分:0)

right:0;添加到#DropMenu。这将使下拉列表从右端开始 显示购物车p代码。