例如,我有20个项目所有相同的高度,所有相同的类“some_class”。 二十的第一项具有id“first_item”。
当我$('.some_class').height();
时,我得到0(这是错误的)。但是当我做$('#first_item').height();
它有效时我会得到一个值。
这令我感到困惑。为什么会这样?我无法真正共享网页,因为它是一个私人页面。
编辑:有趣的是注意.width()工作正常,我得到相同的值,在#first_item
或'.some_class'上调用它。
答案 0 :(得分:3)
因为您可能会发现类选择器返回多个元素。在这种情况下,height()
返回第一个元素的值(这在整个jQuery get方法中是一致的);这可能不是你想要的那个。
如果你想要每个元素的高度,你应该用它们迭代它们;
$('.some_class').each(function () {
var myHeight = $(this).height();
});
获取匹配元素集中第一个元素的当前计算高度。
答案 1 :(得分:1)
$('.some_class:eq(0)').height();
应该为您提供正确的输出。
这是一个基本的html / css内容,你需要了解。
'class'定义特定类型的元素。将使用与该类关联的样式定义类的描述。因此,class用于为同一类型的多个元素提供样式。例如,您提到的20个项目具有相同的类别。 (他们不能拥有相同的身份)。
'id'是HTML元素的唯一标识。不能有多个具有相同“id”的元素。因此,'id'用于为一个uniqe元素提供样式。 类'myClass'和id'myId'的写作方式如下所示。