@visual-framework/vf-navigation
v5.0.3
Published
vf-navigation component
Downloads
1,753
Readme
Navigation component
About
The vf-navigation
component is a horizontal list of links to key pages of the website.
Usage
Global navigation variant
This variant of the vf-navigation
is to be used as part of the vf-global-header
to give a few 'quick links' that will be on every page.
Main navigation variant
This variant of the vf-navigation
can be used to link to sections of the site, or part of the site the parent section.
This is typically placed below the vf-hero
component but can be also found below the vf-global-header
.
There should be only one use of vf-navigation--main
on a page.
On this page navigation variant
The vfNavigationOnThisPage
JavaScript adds a quality-of-life improvement by automatically activating sections as the user scrolls them into view on the page. This sticky element allows users to quickly jump between sections on longer pages.
- There should be only one use of
vf-navigation--on-this-page
on a page. - Anchor targets need an element id:
id="container-1"
. This can be added to any item on the page, but would most logically be added to avf-grid
,embl-grid
orvf-section-header
element. - Ensure
data-vf-js-navigation-on-this-page-container="true"
is present on.vf-navigation__list
. - Ensure each anchor link has a
data-vf-js-navigation-on-this-page-link
.
Install
This component is distributed with npm. After installing npm, you can install the vf-navigation
with this command.
$ yarn add --dev @visual-framework/vf-navigation
Sass/CSS
The source files included are written in Sass(scss
). You can point your Sass include-path
at your node_modules
directory and import it like this.
@import "@visual-framework/vf-navigation/index.scss";
Make sure you import Sass requirements along with the modules. You can use a project boilerplate or the vf-sass-starter
JavaScript
If using the vf-navigation--on-this-page
variant, you should import this component in ./components/vf-component-rollup/scripts.js
or your other JS process:
import { vfNavigationOnThisPage } from "vf-navigation/vf-navigation.js";
// Or import directly
// import { vfGaIndicateLoaded } from '../components/raw/vf-navigation/vf-navigation.js';
vfNavigationOnThisPage();