Giter Site home page Giter Site logo

joose-accordion's Introduction

Joose Accordion Component

A lightweight, unstyled accordion component. This component belongs to the Joose component library, but can be used completely independently.

Please see joose for the whole component library.

The package includes a basic CSS file (along with source Sass files) to handle the showing and hiding of content as an example. No styling has been applied other than simple show/hide. You can utilise the existing HTML/CSS as per the example, or you can add your own classes / selectors of your choice and customise as you wish, for example to add animations.

Installation

To install this component independently using bower use the following command:

bower install joose-accordion

To install this component independently using npm use the following command:

npm install joose-accordion

Usage

There are two types of accordion that can be created; the only difference is whether you can open one or multiple sections at once.

  • Single view accordion (collapses other content)
    var componentAccordion = new joose.classes.Accordion('componentContainer', false);
    or
    <section id="accordionContainer" data-component="accordion" data-multiView="false">

  • Multi-view accordion (can view more than one portion at a time)
    var componentAccordion = new joose.classes.Accordion('componentContainer', true);
    or
    <section id="accordionContainer" data-component="accordion" data-multiView="true">

On page load the script searches the page for the data-component attribute to pick up any components that haven't been manually initialised using the new keyword as demonstrated above.

Here is an example of the HTML required for the accordion:

<section id="multiViewAccordion" data-component="accordion" data-multiView="true">
    <a href="#lorem1" id="lorem1Trigger" aria-controls="lorem1">Lorem 1</a>
    <section id="lorem1" aria-labelledby="lorem1Trigger">
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam vestibulum mi ut turpis dictum, id mollis eros porttitor. Phasellus consectetur convallis ante, quis condimentum arcu fringilla vitae.</p>
    </section>
    <a href="#lorem2" id="lorem2Trigger" aria-controls="lorem2">Lorem 2</a>
    <section id="lorem2" aria-labelledby="lorem2Trigger">
        <p>Donec in semper odio. Fusce eu lacinia leo. Donec ultrices scelerisque velit, in malesuada neque maximus in.</p>
    </section>
    <a href="#lorem3" id="lorem3Trigger" aria-controls="lorem3">Lorem 3</a>
    <section id="lorem3" aria-labelledby="lorem3Trigger">
        <p>Praesent sed erat at risus luctus pulvinar. Aenean et rutrum odio. Sed non porta arcu.</p>
    </section>
</section>

joose-accordion's People

Watchers

James Cloos avatar Phil Gibbins avatar

joose-accordion's Issues

No mixin for config

There is no option to update the config e.g. the 'open' class for an accordion item

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.