0

Html、CSS、jquery といくつかのプラグインを使用して、スライド式のログイン パネルに取り組んでいます。

http://24.125.42.135/

ご覧のとおり、バーがアクティブになるとコンテンツが下に押し出されます (右上のログインをクリック)。これは、最初の画面にいる場合に最適です。ただし、2 番目の画面でログインを押しても、バーは表示されません。

ログインボタンがメニューの他の部分と同じように上部に固定されたままになるように、ここで何をすべきかについて概念的に困惑していますが、ページのどこにいてもコンテンツを押し下げます.

HTML

<!-- Panel -->
    <div id="toppanel">
        <div id="panel">
            <div class="content clearfix">
                <div class="left">
                    <!-- Login Form -->
                    <form class="clearfix" action="#" method="post">
                        <h1>Sign In</h1>
                        <label class="grey" for="log">Username:</label>
                        <input class="field" type="text" name="log" id="log" value="" size="23" />
                        <label class="grey" for="pwd">Password:</label>
                        <input class="field" type="password" name="pwd" id="pwd" size="23" />
                        <label><input name="rememberme" id="rememberme" type="checkbox" checked="checked" value="forever" /> &nbsp;Remember me</label>
                        <div class="clear"></div>
                        <input type="submit" name="submit" value="Login" class="bt_login" />
                        <a class="lost-pwd" href="#">Lost your password?</a>
                    </form>
                </div>
                <div class="left right">            
                    <!-- Register Form -->
                    <form action="#" method="post">
                        <h1>Not a member yet? Sign Up!</h1>             
                        <label class="grey" for="signup">Username:</label>
                        <input class="field" type="text" name="signup" id="signup" value="" size="23" />
                        <label class="grey" for="email">Email:</label>
                        <input class="field" type="text" name="email" id="email" size="23" />
                        <label>A password will be e-mailed to you.</label>
                        <input type="submit" name="submit" value="Register" class="bt_register" />
                    </form>
                </div>
            </div>
        </div> <!-- /login -->  

        <!-- The tab on top --> 
        <div class="tab">
            <ul class="login">
                <li class="left">&nbsp;</li>
                <li id="toggle">
                    <a id="open" class="open" href="#?signin">Log In | Register</a>
                    <a id="close" style="display: none;" class="close" href="#">Close Panel</a>         
                </li>
                <li class="right">&nbsp;</li>
            </ul> 
        </div> <!-- / top -->

    </div> <!--panel -->

CSS

/* sliding panel */
#toppanel {
    position: relative;   /*Panel will overlap  content */
    /*position: relative;*/   /*Panel will "push" the content down */
    top: 0;
    width: 100%;
    z-index: 999;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

Javascript

$(document).ready(function() {

// Expand Panel
$("#open").click(function(){
    $("div#panel").slideDown("slow");   
});

// Collapse Panel
$("#close").click(function(){
    $("div#panel").slideUp("slow");
}); 

// Switch buttons from "Log In | Register" to "Close Panel" on click
$("#toggle a").click(function () {
    $("#toggle a").toggle();
});

});

4

1 に答える 1

0

残りのコンテンツは、スクロールできる固定div内に作成することをお勧めします。

この方法では、ログインdivを切り替えない限り、divを移動することはありません。しかし、それでも今と同じ効果があります。

于 2012-04-17T16:00:39.667 に答える