【问题标题】:HTML5 markup for jQuery UI accordionjQuery UI 手风琴的 HTML5 标记
【发布时间】:2013-03-21 02:50:50
【问题描述】:

我有以下标记,我想使用 jQuery UI 手风琴,但它不像我在 HTML5 之前制作的典型手风琴那样呈现。如何使用文章/部分获得手风琴?

<article>
    <h1>Accordion</h1>
    <div id="accordion">
        <section>
            <h1><a href="#">Aliquam tincidunt mauris eu risus.</a></h1>
            <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus hendrerit. Pellentesque aliquet nibh nec urna.</p>
        </section>
        <section>
            <h1><a href="#">Integer vitae libero ac risus egestas placerat.</a></h1>
            <p>Sed egestas, ante et vulputate volutpat, eros pede semper est, vitae luctus metus libero eu augue. Morbi purus libero, faucibus adipiscing, commodo quis, gravida id, est. Sed lectus.</p>
        </section>
        <section>
            <h1><a href="#">Fusce lobortis lorem at ipsum semper sagittis.</a></h1>
            <p>Morbi interdum mollis sapien. Sed ac risus. Phasellus lacinia, magna a ullamcorper laoreet, lectus arcu pulvinar risus, vitae facilisis libero dolor a purus. Sed vel lacus.</p>
        </section>
    </div>
</article>

在javascript中我使用:

$(document).ready(function (){
    $('#accordion').accordion();    
});

【问题讨论】:

    标签: jquery html jquery-ui jquery-ui-accordion


    【解决方案1】:

    我们已经在 J​​SFiddle 中测试了以下代码...

    <div id="accordion">
       <article class="std_page_content">
        <a id="#test" href="#test" class="header"><h1>Aliquam tincidunt mauris eu risus</h1></a>
        <section>
               <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus hendrerit. Pellentesque aliquet nibh nec urna.</p>
            </section>
        <a href="#test" class="header"><h1>Integer vitae libero ac risus egestas placerat.</h1></a>
           <section>
                <p>Sed egestas, ante et vulputate volutpat, eros pede semper est, vitae luctus metus libero eu augue. Morbi purus libero, faucibus adipiscing, commodo quis, gravida id, est. Sed lectus.</p>
            </section>
           <a href="#test" class="header"><h1>Fusce lobortis lorem at ipsum semper sagittis.</h1></a>
            <section>
                <p>Morbi interdum mollis sapien. Sed ac risus. Phasellus lacinia, magna a ullamcorper laoreet, lectus arcu pulvinar risus, vitae facilisis libero dolor a purus. Sed vel lacus.</p>
            </section>
       </article>
    </div>
    

    手风琴代码为 -

    $("#accordion").accordion({header : "a.header", heightStyle : "content", 
       /*Allows full collapse*/collapsible: true, 
       /*collapses sections*/ active:false, 
       navigation:true
    });
    

    我们的链接是 - http://jsfiddle.net/3tGYB/2/

    你可以试试这个……

    【讨论】:

    • 非常感谢您的回答!!但是在 HTML5 中,section 元素内部应该包含 h1-6 标题元素(参见 HTML5 Document Outlines and Section:html5doctor.com/the-section-element
    • @Rowgm 我已经浏览了您的链接。感谢您向我们指出这一点。在这里你也可以把 HI 标签放在部分内。但是根据 Jquery Accordion UI,我们必须将一些元素作为标题,然后是一部分内容。因此,在 href 标签中,您可以根据需要放置一些其他内容。您也可以通过jqueryui.com/accordion 获取源文档。再次感谢您的指点...
    【解决方案2】:

    附带说明,最好使用details and summary 元素。

    【讨论】:

    • 我看到了一个使用 jQuery UI Accordion 和这些元素的示例,并且确实有效。但是,是否可以通过使用 section/article 元素使其工作?
    • 你可以使用任何你真正喜欢的元素,但在我看来,细节和总结更符合语义。
    • 很好的建议,但目前浏览器支持有限...w3schools.com/tags/tag_summary.asp
    猜你喜欢
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-31
    • 2010-12-26
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多