javascript - 简单的 Accordion 定位

标签 javascript jquery accordion

我在弄清楚如何使用 JavaScript 来定位网站设计中的某个项目时遇到问题。

我正在创建一个简单的 Accordion :

    $(function($) {
        var allPanels = $('.accordion > dd').hide();
        $('.accordion > dd:nth-child(2)').show();
        $('.accordion > dt > a').on('click', function() {
            allPanels.slideUp('fast');
            $(this).parent().next().slideDown('fast');
        return false;
        });
    });

我更愿意做的是,我不想告诉“.next()”向下滑动,而是想定位我的标签之一“4 个标签”,就像第 n 个 child 一样,但是通过从单击的标签。这是我的 html 代码,澄清一下:

    <dl class="accordion">
        <dt><a href="">Linked element 1</a></dt>
        <dt><a href="">Linked element 2</a></dt>
        <dt><a href="">Linked element 3</a></dt>
        <dt><a href="">Linked element 4</a></dt>
        <dd>Linked element 1 - dropdown content</dd>
        <dd>Linked element 2 - dropdown content</dd>
        <dd>Linked element 3 - dropdown content</dd>
        <dd>Linked element 4 - dropdown content</dd>
    </dl>

最佳答案

试试这个:

var allPanels = $('.accordion > dd').hide();
$('.accordion > dd:eq(1)').show();
$('.accordion > dt > a').on('click', function () {
    allPanels.slideUp('fast');
    $('.accordion dd').eq($('.accordion dt a').index(this)).slideDown('fast');
    return false;
});

<强> jsFiddle example

关于javascript - 简单的 Accordion 定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16306574/

相关文章:

JQuery 嵌套可排序 Accordion

php - 加密来自浏览器查看源的值

JavaScript:继承和常量声明

javascript - 我们如何使用 html 页面访问移动设备摄像头和麦克风

javascript - 响应缩放不起作用

javascript - 按字母顺序对 php/html 表单中的下拉值进行排序?

jquery - 如何使用 JSPM 填充 jQuery 插件?

javascript - jQuery Accordion/Toggle Panel - 仅关闭/打开特定类

javascript - 仅在子菜单存在时显示图标

javascript - 与麦哲伦一起展开和折叠滚动的 Foundation 6 Accordion 菜单