Skip to content

Instantly share code, notes, and snippets.

@mg
Last active August 29, 2015 14:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mg/166062ed5959e4854ec2 to your computer and use it in GitHub Desktop.
Save mg/166062ed5959e4854ec2 to your computer and use it in GitHub Desktop.
Rx.js snippets
/*
Drag & Drop
*/
var parent= document.getElementById('parent');
var widget= document.getElementById('widget');
var mouseDowns= Observable.fromEvent(widget, 'mousedown');
var parentMouseMoves= Observable.fromEvent(parent, 'mousemove');
var parentMouseUp= Observable.fromEvent(parent, 'mosueup');
var drags=
mouseDowns.
map(function(e) {
return parentMouseMoves.
takeUntil(parentMouseUps);
}).
concatAll();
drags.forEach(function(e) {
widget.style.left= e.clientX + 'px';
widget.style.top= e.clientY + 'px';
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment