Drop is a JavaScript and CSS library for creating dropdowns and other popups attached to elements on the page. Drop uses Tether.js to efficiently position its elements.
Features
Because Drop is built on Tether, you get all of the benefits of its efficient and powerful positioning.
Drops automatically reposition on page resizes and scrolls, reorienting to stay in view.
Drop uses GPU accelerated positioning to maintain 60fps scrolling, even with dozens or hundreds of drops
on screen and complex animation
Drops can be nested within other drops
Drops can be attached to any of 12 attachment points on the target, or you can leverage the full power of Tether to position your drop anywhere.
Drops can be configured to open when the user clicks or hovers.
Demo Source