From 211a31ea363a721240d23b9f591e7652ab5f313e Mon Sep 17 00:00:00 2001 From: Robert Messerle Date: Fri, 1 May 2015 12:11:25 -0700 Subject: [PATCH] fix(autocomplete): improves logic behind scrolling items into view on keyboard navigation Closes #2615 --- src/components/autocomplete/js/autocompleteController.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/autocomplete/js/autocompleteController.js b/src/components/autocomplete/js/autocompleteController.js index 36f5bde1f60..8fac1211877 100644 --- a/src/components/autocomplete/js/autocompleteController.js +++ b/src/components/autocomplete/js/autocompleteController.js @@ -132,6 +132,7 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $timeout, $ wrap: $element.find('md-autocomplete-wrap')[0], root: document.body }; + elements.li = elements.ul.getElementsByTagName('li'); elements.snap = getSnapTarget(); elements.$ = getAngularElements(elements); } @@ -348,8 +349,9 @@ function MdAutocompleteCtrl ($scope, $element, $mdUtil, $mdConstant, $timeout, $ } function updateScroll () { - var top = ITEM_HEIGHT * self.index, - bot = top + ITEM_HEIGHT, + var li = elements.li[self.index], + top = li.offsetTop, + bot = top + li.offsetHeight, hgt = elements.ul.clientHeight; if (top < elements.ul.scrollTop) { elements.ul.scrollTop = top;