1

在我的网页上,我有一个DIV可滚动的表格。

当我向下滚动时,我想突出显示表格中最可见的中心行。

我该怎么做?

我发现以下脚本与我想要的很接近——> www.rgagnon.com/jsdetails/js-0093.html

但这仅适用于MouseOver事件。我希望它不仅适用于 MouseOver 事件,还适用于我简单地向上/向下滚动时。

4

2 回答 2

2

使用scroll事件。

例如:(编辑:最后测试)

var scrollElem = $('div#panel-hlisting-all');
scrollElem.scroll(function() {
    var scrollElemPos = scrollElem.offset();

    var newCenter = $(document.elementFromPoint(
        scrollElemPos.left + scrollElem.width()  / 2,
        scrollElemPos.top  + scrollElem.height() / 2)
    ).closest('.hlisting');

    if(newCenter.is(".CenterRow")) return;
    $('.CenterRow').removeClass("CenterRow");
    newCenter.addClass('CenterRow');
});

编辑:我更改了代码以使用特定元素的滚动条。
第三编辑:我更新了代码以防止闪烁。

于 2009-11-24T01:53:32.113 回答
0

尝试利用jQuery Scroll 事件

于 2009-11-24T01:56:48.330 回答