Switch/toggle div (jQuery)

后端 未结 9 614
伪装坚强ぢ
伪装坚强ぢ 2020-12-01 09:39

I wish to accomplish a fairly simple task (I hope!)

I got two div tags and one anchor tags, like this:

forgot p         


        
相关标签:
9条回答
  • 2020-12-01 10:20

    I think you want this:

    $('#recover-password').show();
    

    or

    $('#recover-password').toggle();
    

    This is made possible by jQuery.

    0 讨论(0)
  • 2020-12-01 10:23

    Try this: http://www.webtrickss.com/javascript/jquery-slidetoggle-signup-form-and-login-form/

    ََََََََََََََََََََََََََََََََََََََََََََََََ

    0 讨论(0)
  • 2020-12-01 10:24

    I think this works:

    $(document).ready(function(){
    
        // Hide (collapse) the toggle containers on load
        $(".toggle_container").hide();
    
        // Switch the "Open" and "Close" state per click then 
        // slide up/down (depending on open/close state)
        $("h2.trigger").click(function(){
            $(this).toggleClass("active").next().slideToggle("slow");
            return false; // Prevent the browser jump to the link anchor
        });
    });
    
    0 讨论(0)
  • 2020-12-01 10:24

    I used this way to do that for multiple blocks without conjuring new JavaScript code:

    <a href="#" data-toggle="thatblock">Show/Hide Content</a>
    
    <div id="thatblock" style="display: none">
      Here is some description that will appear when we click on the button
    </div>
    

    Then a JavaScript portion for all such cases:

    $(function() {
      $('*[data-toggle]').click(function() {
        $('#'+$(this).attr('data-toggle')).toggle();
        return false;
      });
    });
    
    0 讨论(0)
  • 2020-12-01 10:29

    Use this:

    <script type="text/javascript" language="javascript">
        $("#toggle").click(function() { $("#login-form, #recover-password").toggle(); });
    </script>
    

    Your HTML should look like:

    <a id="toggle" href="javascript:void(0);">forgot password?</a>
    <div id="login-form"></div>
    <div id="recover-password" style="display:none;"></div>
    

    Hey, all right! One line! I <3 jQuery.

    0 讨论(0)
  • 2020-12-01 10:29

    You could write a simple jQuery plugin to do this. The plugin would look like:

    (function($) {
        $.fn.expandcollapse = function() {
            return this.each(function() {
                obj = $(this);
                switch (obj.css("display")) {
                    case "block":
                        displayValue = "none";
                        break;
    
                    case "none":
                    default:
                        displayValue = "block";
                }
    
                obj.css("display", displayValue);
            });
        };
    } (jQuery));
    

    Then wire the plugin up to the click event for the anchor tag:

    $(document).ready(function() {
        $("#mylink").click(function() {
            $("div").expandcollapse();
        });
    });
    

    Providing that you set the initial 'display' attributes for each div to be 'block' and 'none' respectively, they should switch to being shown/hidden when the link is clicked.

    0 讨论(0)
提交回复
热议问题