项目作者: NigelOToole

项目描述 :
Priority Nav Scroller is a plugin for the priority+ navigation pattern.
高级语言: HTML
项目地址: git://github.com/NigelOToole/priority-nav-scroller.git
创建时间: 2018-05-18T14:33:30Z
项目社区:https://github.com/NigelOToole/priority-nav-scroller

开源协议:MIT License

下载


Priority Nav Scroller

Priority Nav Scroller is a plugin for the priority+ navigation pattern. When navigation items don’t fit on screen they are hidden and can be scrolled into view or using controls.

View demo

Installation

  1. $ npm install priority-nav-scroller --save-dev

Usage

Import JS

The script is an ES6(ES2015) module but the compiled version is included in the build as “src/scripts/priority-nav-scroller-umd.js”. You can also copy “src/scripts/priority-nav-scroller.js” into your own site if your build process can accommodate ES6 modules.

  1. import PriorityNavScroller from './priority-nav-scroller.js';
  2. // Init with default setup
  3. const priorityNavScrollerDefault = PriorityNavScroller();
  4. // Init with all options at default setting
  5. const priorityNavScrollerDefault = PriorityNavScroller({
  6. selector: '.nav-scroller',
  7. navSelector: '.nav-scroller-nav',
  8. contentSelector: '.nav-scroller-content',
  9. itemSelector: '.nav-scroller-item',
  10. buttonLeftSelector: '.nav-scroller-btn--left',
  11. buttonRightSelector: '.nav-scroller-btn--right',
  12. scrollStep: 80
  13. });
  14. // Init multiple nav scrollers with the same options
  15. let navScrollers = document.querySelectorAll('.nav-scroller');
  16. navScrollers.forEach((currentValue, currentIndex) => {
  17. PriorityNavScroller({
  18. selector: currentValue
  19. });
  20. });

Options

Property Default Type Description
selector ‘.nav-scroller’ String/Node Container element selector.
navSelector ‘.nav-scroller-nav’ String Item element selector.
contentSelector ‘.nav-scroller-content’ String Content element selector.
itemSelector ‘.nav-scroller-item’ String Item element selector.
buttonLeftSelector ‘.nav-scroller-btn—left’ String Left button element selector.
buttonRightSelector ‘.nav-scroller-btn—right’ String Right button element selector.
scrollStep 80 Number/String Amount to scroll on button click. ‘average’ gets the average link width.

Import SASS

  1. @import "node_modules/priority-nav-scroller/src/styles/priority-nav-scroller.scss";

Markup

  1. <div class="nav-scroller">
  2. <nav class="nav-scroller-nav">
  3. <div class="nav-scroller-content">
  4. <a href="#" class="nav-scroller-item">Item 1</a>
  5. <a href="#" class="nav-scroller-item">Item 2</a>
  6. <a href="#" class="nav-scroller-item">Item 3</a>
  7. ...
  8. </div>
  9. </nav>
  10. <button class="nav-scroller-btn nav-scroller-btn--left">
  11. ...
  12. </button>
  13. <button class="nav-scroller-btn nav-scroller-btn--right">
  14. ...
  15. </button>
  16. </div>

Using other tags

The demos use a

for “nav-scroller-content” and tags for the “nav-scroller-item” but you can also use a