我有一些带有div类的.class类,其滚动位置由其父类的另一个子类定义,因此我需要用$(this)分配一个scrollTop(),类似于
$(".class").scrollTop($(this).parent().find('.child').scrollTop()); 但那密码不管用..。
$(".class").scrollTop(
function(){
$(this).parent().find('.child').scrollTop()
}
);也不管用。有线索吗?
发布于 2014-12-01 22:22:43
这是假设我正确地理解了你的问题。您有多个“类”元素,它们有自己的“子”元素。您需要使用每个元素分别设置每个元素。
$(".class").each(
function(){
var elem = $(this);
var childsScrollPosition = elem.parent().find('.child').scrollTop();
elem.scrollTop(childsScrollPosition);
}
);发布于 2014-12-01 22:19:16
ScrollTop需要一个整数来表示这个位置,所以传递DOM节点不会有帮助。尝试缓存您的选择器,并使用position方法传递它:
var scrollTo = $(this).parent().find('.child');
$(".class").scrollTop( scrollTo.position().top );或者根据用例使用偏移量:
var scrollTo = $(this).parent().find('.child');
$(".class").scrollTop( scrollTo.offset().top );我在这里做的是盲目的,但这也是可行的:
var scrollTo = $(this).parent().find('.child');
$(".class").scrollTop(
function() {
return scrollTo.offset().top;
}
);这个有用吗?
https://stackoverflow.com/questions/27238309
复制相似问题