FFNM/README.md
2020-07-23 09:04:22 +02:00

7.6 KiB

FFNM (Front-End for the next master)

<button is-click="class:add('open', 'article')">open</button>

<article></article>

👇 🖱 Click! 👇

<button is-click="class:add('open', 'article')">open</button>

<article class="open"></article>

Simple utility to avoid writing Javascript when working with classes. It only takes up 3.2Kb!

  • Simplifies the click.

  • Simplifies the scroll.

  • Simplifies hover.

  • Simplifies when the elements are visible or not.

DEMOS

Click | Scroll | Visible

Documentation


English

Install

Add to your <head> the following tag.

<script src="https://cdn.jsdelivr.net/gh/tanrax/FFNM@1.3.1/dist/ffnm.min.js" integrity="sha384-lAUBI0wOuUBOb4gGjqjeuJlFgrl1YixuQdG/OngLda/8+ZPThlN2xk+EJAkl7gEd" crossorigin="anonymous"></script>

Examples

Click

Add the class press to button when the button is pressed.
<button is-click="class:add('press')">open</button>
Remove the class press to button when the button is pressed.
<button is-click="class:remove('press')">close</button>
Switch the classs show to button when the button is pressed.
<button is-click="class:toggle('show')">view</button>
Add the class show to the #nav selector when the button is pressed.
<button is-click="class:add('show', '#nav')">open</button>
<nav id="nav"></nav>
Remove the show class from the #nav selector when the button is pressed.
<button is-click="class:remove('show', '#nav')">close</button>
<nav id="nav" class="show"></nav>
Switch the show class to the #nav selector when the button is pressed.
<button is-click="class:toggle('show', '#nav')">view</button>
<nav id="nav" class="show"></nav>

Scroll up

Add the class show to nav when the scroll goes up.
<nav is-scroll-up="class:add('show')"></nav>
Remove the show class from nav when the scroll goes up.
<nav is-scroll-up="class:remove('show')"></nav>

Scroll down

Add the class show to nav when the scroll down.
<nav is-scroll-down="class:add('show')"></nav>
Remove the show class from nav when the scroll down.
<nav is-scroll-down="class:remove('show')"></nav>

Hover

Add the class show to div when hover.
<div is-hover="class:add('show')"></div>
Remove the show class from div when hover.
<div is-hover="class:remove('show')"></div>
Toggle the show class from div when hover.
<div is-hover="class:toggle('show')"></div>
Add the class show to #button when div hover.
<div is-hover="class:toggle('show', '#button')"></div>
<button id="button">Hi</div>

Visible

Add the class show to div when is visible.
<div is-visible="class:add('show')"></div>
Remove the show class from div when is visible.
<div is-visible="class:remove('show')"></div>
Toggle the show class from div when is visible.
<div is-visible="class:toggle('show')"></div>
Add the class show to #button when div is visible.
<div is-visible="class:toggle('show', '#button')"></div>
<button id="button">Hi</div>

Not visible

Add the class show to div when is not visible.
<div is-not-visible="class:add('show')"></div>
Remove the show class from div when is not visible.
<div is-not-visible="class:remove('show')"></div>
Toggle the show class from div when is not visible.
<div is-not-visible="class:toggle('show')"></div>
Add the class show to #name when div is not visible.
<div is-not-visible="class:toggle('show', '#button')"></div>
<input id="name">

Spanish/Español

Instalar

Añade a tu <head> la siguiente etiqueta.

<script src="https://cdn.jsdelivr.net/gh/tanrax/FFNM@1.3.1/dist/ffnm.min.js" integrity="sha384-lAUBI0wOuUBOb4gGjqjeuJlFgrl1YixuQdG/OngLda/8+ZPThlN2xk+EJAkl7gEd" crossorigin="anonymous"></script>

Ejemplos de uso

Clic

Añadir la clase apretado a button cuando sea pulsado.
<button is-click="class:add('apretado')">Apreta</button>
Quitar la clase apretado a button cuando sea pulsado.
<button is-click="class:remove('apretado')">cerrar</button>
Intercambiar la clase apretado a button cuando sea pulsado.
<button is-click="class:toggle('apretado')">ver</button>
Añadir la clase show al selector #menu cuando sea pulsado el botón.
<button is-click="class:add('show', '#menu')">abrir</button>
<nav id="menu"></nav>
Quitar la clase show al selector #menu cuando sea pulsado el botón.
<button is-click="class:remove('show', '#menu')">cerrar</button>
<nav id="menu" class="show"></nav>
Intercambiar la clase show al selector #menu cuando sea pulsado el botón.
<button is-click="class:toggle('show', '#menu')">ver</button>
<nav id="menu" class="show"></nav>

Subir scroll

Añadir la clase show al selector nav cuando el scroll sube.
<nav is-scroll-up="class:add('show')"></nav>
Quitar la clase show al selector nav cuando el scroll sube.
<nav is-scroll-up="class:remove('show')"></nav>

Bajar scroll

Añadir la clase show al selector nav cuando el scroll baja.
<nav is-scroll-down="class:add('show')"></nav>
Quitar la clase show al selector nav cuando el scroll baja.
<nav is-scroll-down="class:remove('show')"></nav>

Hover

Añade la clase show al div cuando sea hover.
<div is-hover="class:add('show')"></div>
Quita la clase show al div cuando sea hover.
<div is-hover="class:remove('show')"></div>
Intercambia la clase show al div cuando sea hover.
<div is-hover="class:toggle('show')"></div>
Añade la clase show a #button cuando div sea hover.
<div is-hover="class:toggle('show', '#button')"></div>
<button id="button">Hi</div>

Visible

Añade la clase ver en el div cuando es visible.
<div is-visible="class:add('ver')"></div>
Quita la clase ver en el div cuando es visible.
<div is-visible="class:remove('ver')"></div>
Intercambia la clase ver cuando el div es visible.
<div is-visible="class:toggle('ver')"></div>
Añade la clase ver en #boton cuando el div es visible.
<div is-visible="class:toggle('ver', '#boton')"></div>
<button id="boton">Hi</div>

No visible

Añade la clase ver en el div cuando no es visible.
<div is-not-visible="class:add('ver')"></div>
Quita la clase ver en el div cuando no es visible.
<div is-not-visible="class:remove('ver')"></div>
Intercambia la clase ver cuando el div no es visible.
<div is-not-visible="class:toggle('ver')"></div>
Añade la clase ver en #boton cuando el div no es visible.
<div is-not-visible="class:toggle('ver', '#boton')"></div>
<button id="boton">Hi</div>

Development

Install

npm i

Build

gulp

Watch mode

gulp dev