Sha256: 34fef742000dc8380a6764e9491f9debc23ec8ed1c245b640797fae683d10cd4

Contents?: true

Size: 604 Bytes

Versions: 3

Compression:

Stored size: 604 Bytes

Contents

Joint.bind 'Overlay', class
  loaded: =>
    @on 'click', @clicked
    @on 'keyup', document, @escaped

    @y = window.scrollY
    main = document.body.querySelector('main')
    main.classList.add('overlayed')
    main.style.top = "-#{@y}px"
    document.body.scrollTop = 0

  clicked: (e) =>
    if e.target == @element()
      @remove()

  escaped: (e) =>
    if e.keyCode == 27
      @remove()

  remove: (e) =>
    main = document.body.querySelector('main')
    main.classList.remove('overlayed')

    @element().remove()

    window.scrollTo(0, @y)
    main.style.top = null
    @scrollTop = null

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ecrire-0.22.1 lib/ecrire/app/assets/javascripts/shared/overlay.js.coffee
ecrire-0.21.0 lib/ecrire/app/assets/javascripts/shared/overlay.js.coffee
ecrire-0.20.0 lib/ecrire/app/assets/javascripts/shared/overlay.js.coffee