AngularJS directive for implementing pan and zoom on any DOM element