Element.prop(' scrollHeight')为Angular.js中的不同列表项返回相同的值

时间:2014-12-01 15:10:20

标签: javascript jquery html css angularjs

我正在尝试获取列表项的高度和宽度。我已经检查了获取项目高度和宽度的各种方法,但它们都没有返回元素提供的实际scrollHeight。

当我通过控制台检查scrollHeight时,我得到了

[div.class-name, context: ...]
    0: div.className.className2
        accessKey: ""
        ....
        scrollHeight: 176
        scrollWidth: 276
        ....

所以我用下面的代码将它们打印出来:

angular.module('app').directive('temp', function () {
    return {
        restrict: 'E',
        templateUrl: 'link/to/template',
        replace: 'true',
        link: function(scope, element) {
            console.log(element);
            console.log(element.prop('scrollHeight'));
            console.log(element.prop('scrollWidth'));
        }
    };
});

它返回

112 (height)
304 (width)

为无序列表中的每个列表项返回这组值。列表项中没有一个具有这样的高度/宽度(即使考虑到未应用某些边距/填充值)

我需要这些值才能更新css。还有其他方法吗?或者你能否给我一个关于我做错的提示?

1 个答案:

答案 0 :(得分:0)

给我更多有关要求的详细信息,否则我认为最好先尝试一下window.scroll
   基于滚动的功能意味着你必须将自己的css应用于这些元素。