Update JSON API
[src/app-framework-demo.git] / afm-client / bower_components / tether / js / markAttachment.js
1 (function() {
2   this.Tether.modules.push({
3     initialize: function() {
4       var dot, el, type, _i, _len, _ref, _results;
5       this.markers = {};
6       _ref = ['target', 'element'];
7       _results = [];
8       for (_i = 0, _len = _ref.length; _i < _len; _i++) {
9         type = _ref[_i];
10         el = document.createElement('div');
11         el.className = this.getClass("" + type + "-marker");
12         dot = document.createElement('div');
13         dot.className = this.getClass('marker-dot');
14         el.appendChild(dot);
15         this[type].appendChild(el);
16         _results.push(this.markers[type] = {
17           dot: dot,
18           el: el
19         });
20       }
21       return _results;
22     },
23     position: function(_arg) {
24       var manualOffset, manualTargetOffset, offset, offsets, side, type, val;
25       manualOffset = _arg.manualOffset, manualTargetOffset = _arg.manualTargetOffset;
26       offsets = {
27         element: manualOffset,
28         target: manualTargetOffset
29       };
30       for (type in offsets) {
31         offset = offsets[type];
32         for (side in offset) {
33           val = offset[side];
34           if (typeof val !== 'string' || (val.indexOf('%') === -1 && val.indexOf('px') === -1)) {
35             val += 'px';
36           }
37           if (this.markers[type].dot.style[side] !== val) {
38             this.markers[type].dot.style[side] = val;
39           }
40         }
41       }
42       return true;
43     }
44   });
45
46 }).call(this);