For documentation, starting with Yvonne's answer using core-animation:
<link rel="import" href="../../bower_components/polymer/polymer.html"> <link rel="import" href="../../bower_components/core-animation/core-animation.html"> <polymer-element name="animated-scroll"> <template> <style> #scroller { height: 300px; overflow-y: scroll; } </style> <button on-tap="{{animate}}">Scroll it</button> <div id="scroller"> <content></content> </div> <core-animation id="animation" duration="400" easing="ease-in-out"></core-animation> </template> <script> (function () { Polymer({ animate: function (e) { var start = this.$.scroller.scrollTop; var end = 500; </script> </polymer-element>
clyfe source share