我试图在视图中获取div并且div元素正在动态添加..所以我分配一个链接,点击一个div元素可以被带入视图,无论它是否已经在视野中。所以当我点击链接时,如果我试图进入视图的div已经在视图中,它将离开我的视野。这是一个错误??
我添加了一个工作示例。
代码就像
$(".testClick").on("click",function(e){
e.preventDefault();
// Call the scroll function
goToByScroll("indID"+1);
});
function goToByScroll(id){
// Reove "link" from the ID
id = id.replace("link", "");
// Scroll
$('.contentBody').animate({
scrollTop: $("#"+id).offset().top},
'slow');
}
答案 0 :(得分:1)
考虑父偏移量也很有用:
的 LIVE DEMO 强>
$(document).ready(function(){
$(".wrapper").css({"width" : $(window).width() , "height" : $(window).height()} );
$(".testClick").on("click",function(e){
e.preventDefault();
goToByScroll("indID1"); // try change to indID4
});
});
function goToByScroll(id){
var el = $('#'+id);
var elOffs = el.offset().top;
var parOffs = el.closest('.contentBody').offset().top;
$('.contentBody').stop().animate({ scrollTop: elOffs - parOffs },800);
}