3 document.addEventListener('DOMContentLoaded', function(){
6 document.body.addEventListener('mouseup', function(){
10 document.body.addEventListener('mousemove', function(e){
12 dragging.style.top = e.clientY + 'px';
13 dragging.style.left = e.clientX + 'px';
19 document.body.addEventListener('mousedown', function(e){
20 if (e.target.getAttribute('data-index'))
30 var el = document.createElement('div');
31 el.setAttribute('data-index', count);
32 document.querySelector('.scroll').appendChild(el);
38 dir = dir == 'right' ? 'left' : 'right';
41 tethers.push(new Tether({
44 attachment: 'middle ' + dir,
45 targetOffset: (dir == 'left' ? '10px 10px' : '10px -10px')
56 function initAnim(el){
57 var start = performance.now()
60 var tick = function(){
61 var diff = performance.now() - last;
63 if (!last || diff > 50){
64 last = performance.now();
66 var nextTop = 50 * Math.sin((last - start) / 1000);
68 var curTop = parseFloat(el.style.top || 0);
69 var topChange = nextTop - lastTop;
72 var top = curTop + topChange;
74 el.style.top = top + 'px';
79 requestAnimationFrame(tick);