summaryrefslogtreecommitdiffstats
path: root/afm-client/bower_components/tether/js/markAttachment.js
blob: a6d8f80b51aeb07eb8c68329dfe85e4e777a69ed (plain)
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
(function() {
  this.Tether.modules.push({
    initialize: function() {
      var dot, el, type, _i, _len, _ref, _results;
      this.markers = {};
      _ref = ['target', 'element'];
      _results = [];
      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
        type = _ref[_i];
        el = document.createElement('div');
        el.className = this.getClass("" + type + "-marker");
        dot = document.createElement('div');
        dot.className = this.getClass('marker-dot');
        el.appendChild(dot);
        this[type].appendChild(el);
        _results.push(this.markers[type] = {
          dot: dot,
          el: el
        });
      }
      return _results;
    },
    position: function(_arg) {
      var manualOffset, manualTargetOffset, offset, offsets, side, type, val;
      manualOffset = _arg.manualOffset, manualTargetOffset = _arg.manualTargetOffset;
      offsets = {
        element: manualOffset,
        target: manualTargetOffset
      };
      for (type in offsets) {
        offset = offsets[type];
        for (side in offset) {
          val = offset[side];
          if (typeof val !== 'string' || (val.indexOf('%') === -1 && val.indexOf('px') === -1)) {
            val += 'px';
          }
          if (this.markers[type].dot.style[side] !== val) {
            this.markers[type].dot.style[side] = val;
          }
        }
      }
      return true;
    }
  });

}).call(this);