Scroll Drop-down li元素直到元素可见

时间:2015-07-24 09:54:58

标签: javascript html css angularjs

嗨,我有一个AngularJs指令,根据"按键"选择一个项目。事件。这很好。

当有滚动条时,问题出现了,隐藏了元素,我无法看到它们。

这是工作代码:http://plnkr.co/edit/9WhAuxOyK4l6yDeRmvle?p=preview

这是Angular指令

myApp.directive('keypressEvents', 
function () {
return {
    restrict: 'A',
    link: function (scope, element, attr) {
        console.log('linked');
        element.parent().parent().bind('keypress', function (e) {
        var letter = String.fromCharCode(e.which);
        var target = e.target; 
        var charat = element[0].textContent.charAt(13);  
        if(charat === letter){ 
              element.addClass("active");
              element.scrollTop = 100;  ///<---- the following statement dose not works and how do i calculate this value in javascript? 
        }
        else{
              element.removeClass("active");
        }
        });
    }
};
});

我如何计算javascript中的offest以及用于移动到正确位置的最佳函数?

1 个答案:

答案 0 :(得分:0)

我解决了滚动顶部函数必须应用于ul元素并且必须移动从li元素获取的偏移量

              element.parent()[0].scrollTop = element[0].offsetTop;