JavaScript:向上/向下滚动时突出显示一行

时间:2009-11-24 01:44:02

标签: javascript jquery scroll highlighting

在我的网页上,我可以滚动DIV内的表格。

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

我该怎么做?

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

但这仅适用于MouseOver事件。我希望这不仅可以用于MouseOver事件,还可以用于向上/向下滚动。

2 个答案:

答案 0 :(得分: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');
});

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

答案 1 :(得分:0)

尝试使用jQuery Scroll event