滚动到元素并将其放置在视图中间

Pro*_*der 5 jquery

我正在尝试自动滚动到订单簿的中间行.

我有orderBook div,其中放置了orderBook的表.并且该表中的一行具有id middleRow.我要做的是滚动并将该行放在orderBook中间.

预期结果如图所示:

在此输入图像描述

我试过了jQuery scrollTo函数,但它将中间行放在屏幕顶部,如下所示:

$( '#手持订单').找到( 'tableBody ').scrollTo(' #orderBookMiddleRow')

在此输入图像描述

Cas*_*ule 11

http://demos.flesler.com/jquery/scrollTo/

您可以像这样为滚动指定偏移量:

$('#orderBook').find('.tableBody').scrollTo('#orderBookMiddleRow', 500, {offset: -$(window).height() /2})
Run Code Online (Sandbox Code Playgroud)

这是一个非常简单的概念证明:http://jsfiddle.net/6k8asog1/

编辑: 这是OP修改后的代码,用于滚动到#orderBook的中心,而不是窗口:

$('#orderBook').find('.tableBody').scrollTo('#orderBookMiddleRow', 500, {offset: $('#orderBook').offset().top - $('#orderBook').height() - $('#orderBookMiddleRow').height() }) 
Run Code Online (Sandbox Code Playgroud)