按类名

时间:2015-06-13 09:45:32

标签: javascript jquery html css

假设我有很多带有类名.leftItem的元素,它们都与文档顶部有不同的偏移量。

我想将所有元素的偏移设置为零。我查看了jQuerys offset()方法,它只接受left top的参数。

因此, $('.leftItem').offset({top: $(.leftItem).offset().top}, left: 0});将所有元素带到同一个顶部偏移量,我只想设置左侧

实现这一目标的最简单方法是什么?我是否必须设置每个元素的唯一ID并存储每个顶部偏移量的值?

编辑:我尝试使用$(this).offset().top但它返回undefined ..我相信这是因为我在处理程序中使用它

$scope.onSwipeRight = function(){

      $(".leftFade").offset({ top: $(this).offset().top, left: 0});

}

2 个答案:

答案 0 :(得分:1)

在jQuery的this

中使用each()
$('.leftItem').each(function() {
    $(this).offset({top: $(this).offset().top, left: 0});
});
  

http://codepen.io/anon/pen/QbgRxx

答案 1 :(得分:0)

您是否必须使用JS来执行此操作?也许您可以尝试使用CSS并尝试以下方法:

.leftItem {
    position: absolute;
    left: 0;
}

这是jsFiddle