2017-01-25 5 views
0

に非同期でロードされたとき、私はそうのような場所のハッシュを使用して、要素のIDを渡しています:スクロールし、前記要素は、ページのロード

https://example.com/object/id#sub-object 

しかし、sub-object要素のリストですページ読み込み後にAPIから動的に読み込まれます。

非同期要求が完了したら、ビューポートを特定の要素にスクロールするにはどうすればよいですか?それがページロード時のDOMでは使用できないということを考えれば、

答えて

0

私はこれを自分で解決しました。スクロールアニメーションにjqueryを使用しました。

if(window.location.hash && !this.hasScrolled){ 

    var hash = location.hash.substring(1); 

    $('html, body').animate({scrollTop: this.$refs[hash][0].offsetTop -200} ,800); 

    this.hasScrolled = true; 
} 

これは、このオフセット要素のが知られている点であるとしてコンポーネントのupdated()フックで発生しなければなりませんでした。 hasScrolledプロパティ(最初はfalseに設定されています)を追加して、初期ページの読み込み時にのみスクロールするようにしました。

関連する問題