2017-01-25 1 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), поэтому я могу убедиться, что он выполняет только прокрутку на начальной загрузке страницы.