1

私の Web ページで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');
});

編集:特定の要素のスクロールバーで動作するようにコードを変更しました。
3回目の編集:ちらつきを防ぐためにコードを更新しました。

于 2009-11-24T01:53:32.113 に答える
0

jQuery Scroll イベントを利用してみてください。

于 2009-11-24T01:56:48.330 に答える