繁体   English   中英

页面加载后,在jQuery UI的手风琴中打开所有部分

[英]Open all sections in jQuery UI's accordion after page loading

您好,我想在页面加载后打开jQuery Ui的手风琴。 为此,我在此站点上找到了以下代码。

<!doctype html>
<html lang="en">
    <head>
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <link rel="icon" type="../image/logo.png" href="image/logo.png" />
      <title>Survey</title>
      <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
      <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
      <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
      <script type="text/javascript">
          $( function() {
                $('#accordion').accordion({
                        collapsible:true,
                        heightStyle: 'content',
                        beforeActivate: function(event, ui) {
                             // The accordion believes a panel is being opened
                            if (ui.newHeader[0]) {
                                var currHeader  = ui.newHeader;
                                var currContent = currHeader.next('.ui-accordion-content');
                             // The accordion believes a panel is being closed
                            } else {
                                var currHeader  = ui.oldHeader;
                                var currContent = currHeader.next('.ui-accordion-content');
                            }
                             // Since we've changed the default behavior, this detects the actual status
                            var isPanelSelected = currHeader.attr('aria-selected') == 'true';

                             // Toggle the panel's header
                            currHeader.toggleClass('ui-corner-all',isPanelSelected).toggleClass('accordion-header-active ui-state-active ui-corner-top',!isPanelSelected).attr('aria-selected',((!isPanelSelected).toString()));

                            // Toggle the panel's icon
                            currHeader.children('.ui-icon').toggleClass('ui-icon-triangle-1-e',isPanelSelected).toggleClass('ui-icon-triangle-1-s',!isPanelSelected);

                             // Toggle the panel's content
                            currContent.toggleClass('accordion-content-active',!isPanelSelected)    
                            if (isPanelSelected) { currContent.slideUp(); }  else { currContent.slideDown(); }

                            return false; // Cancel the default action
                        }
                    });
                    $("#accordion> div").accordion({
                        header: "h3",
                        autoHeight: false,
                        collapsible: true,
                        icons: icons
                    });
            });
      </script>
    </head>
    <body>
        <div id="accordion">
          <h3>First header</h3>
          <div>First content panel</div>
          <h3>Second header</h3>
          <div>Second content panel</div>
        </div>
    </body>

我很难解决的问题是,即使一切正常,在页面加载后如何继续打开所有手风琴。 谢谢!

只显示手风琴的内容,像这样:

 $( function() { $('#accordion').accordion({ collapsible:true, heightStyle: 'content', create: function( event, ui ) { $('#accordion .ui-accordion-content').show(); } }); }); 
 <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" type="../image/logo.png" href="image/logo.png" /> <title>Survey</title> <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> <script src="https://code.jquery.com/jquery-1.12.4.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <script type="text/javascript"> </script> </head> <body> <div id="accordion"> <h3>First header</h3> <div>First content panel</div> <h3>Second header</h3> <div>Second content panel</div> </div> </body> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM