使用JQuery为聚合物中的元素设置滚动效果动画

使用JQuery为聚合物中的元素设置滚动效果动画,jquery,scroll,jquery-animate,polymer,shadow-dom,Jquery,Scroll,Jquery Animate,Polymer,Shadow Dom,我试图使用JQuery制作一个滚动动画,但我试图滚动的元素似乎位于#shadow root中 我试图滚动的元素是主容器。元素树: html body core-scaffold#scaffold #shadow-root core-drawer-panel#drawerPanel core-header-panel#headerPanel #shadow-root div#outerContainer div#mainPanel div#mainContainer 你能在Polymer中用J

我试图使用JQuery制作一个滚动动画,但我试图滚动的元素似乎位于#shadow root中

我试图滚动的元素是主容器。元素树:

html body core-scaffold#scaffold #shadow-root core-drawer-panel#drawerPanel core-header-panel#headerPanel #shadow-root div#outerContainer div#mainPanel div#mainContainer 
  • 你能在Polymer中用JQuery操纵#shadow root吗
  • 有没有其他方法可以在“聚合物”中设置滚动效果的动画
  • JQuery:

    $("#mainContainer").animate({
                    scrollTop:$( $('#'+doc_card_id).offset().top)
                },1000, function(){
                    console.log($("#doc-card-list")[0].scrollHeight + ' ' + $('#'+doc_card_id).offset().top);
                })
    

    我想出了一个很好的解决办法。如果我添加一个火灾事件,我总是可以滚动到顶部。差不多

    任何页面

    聚合物({scrollTop:function(this.fire('scroll-top');)})

    主页(index.html)

    这可能会有帮助。
    document.addEventListener('scroll-top'){
            var scaffold = document.querySelector('core-scaffold');
            var scrollArea = scaffold.shadowRoot.querySelector('core-header-panel');
            scrollArea.scroller.scrollTop = 0;
            // or make an animate scrolltop
        }
    }