Blame view

assets/plugins/waypoints/waypoints.debug.js 1.38 KB
cf76164e6   Ting Chan   20190709
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  /*!
  Waypoints Debug - 4.0.0
  Copyright © 2011-2015 Caleb Troughton
  Licensed under the MIT license.
  https://github.com/imakewebthings/waypoints/blog/master/licenses.txt
  */
  (function() {
    'use strict'
  
    var displayNoneMessage = [
      'You have a Waypoint element with display none. For more information on ',
      'why this is a bad idea read ',
      'http://imakewebthings.com/waypoints/guides/debugging/#display-none'
    ].join('')
    var fixedMessage = [
      'You have a Waypoint element with fixed positioning. For more ',
      'information on why this is a bad idea read ',
      'http://imakewebthings.com/waypoints/guides/debugging/#fixed-position'
    ].join('')
  
    function checkWaypointStyles() {
      var originalRefresh = window.Waypoint.Context.prototype.refresh
  
      window.Waypoint.Context.prototype.refresh = function() {
        for (var axis in this.waypoints) {
          for (var key in this.waypoints[axis]) {
            var waypoint = this.waypoints[axis][key]
            var style = window.getComputedStyle(waypoint.element)
            if (!waypoint.enabled) {
              continue
            }
            if (style && style.display === 'none') {
              console.error(displayNoneMessage)
            }
            if (style && style.position === 'fixed') {
              console.error(fixedMessage)
            }
          }
        }
        return originalRefresh.call(this)
      }
    }
  
    checkWaypointStyles()
  }())
  ;