brisky-scroll

1.0.0 • Public • Published

brisky-scroll

Scroll property that stores and applies scroll using state

usage

// elem
{
  props: {
    scrollTop: {
      $: 'funkyScrollField'
    }
  }
}

will do internally

// elem
{
  props: {
    scrollTop: {
      $: 'funkyScrollField',
      render: {
        state () {
          const t = target // find the node
          t.scrollTop = val * (t.scrollWidth - t.offsetWidth) // expects proportion
        },
        static () {
          t.scrollTop = val // expects exact value
        }
      }
    }
  },
  on: {
    scroll: {
      briskyScroll (e, stamp) { // update the state on scroll using proportion
        const t = e.target
        e.state.get('funkyScrollField', 0).set({
          scroll: t.scrollTop / (t.scrollWidth - t.offsetWidth)
        }, stamp)
      }
    }
  }
}

Readme

Keywords

Package Sidebar

Install

npm i brisky-scroll

Weekly Downloads

1

Version

1.0.0

License

ISC

Last publish

Collaborators

  • vigour-io