1

すなわち。多くのテキスト行があるページがあります

<div class="textline" id=line1>text line or line with image no reason</div>
<div class="textline" id=line2>text line or line with image  no reason</div>
<div class="textline" id=line500>text line or line with image  no reason</div>

(ページ全体ではなく)訪問者の画面で最後に実際に表示されるlineIDを取得し、このIDをjqueryを使用してサーバーに送信するにはどうすればよいですか?1)初回送信-ページが5秒以上フォーカスされた場合(実際に表示された場合)、訪問者の画面から最後に表示されたlineIDを送信する必要があります。2)ページを下にスクロールしたときに、最後の表示行を送信する必要があります(少しタイムアウトして考えてください)

jqueryで可能ですか?例はありますか?

4

2 に答える 2

2

要素のリストから最後の要素を取得し.textlineます。

例:

$(".textline").last();

または、ビューポートの画面に表示されている最後の要素を選択する場合は、次のように、もっと複雑なことを行う必要があります。

$(".textline").each(function() {
    var offset = $(this).offset().top - $(window).scrollTop();

    if(offset <= window.innerHeight - $(this).height){
        // it's the last visible line, do something with it. 
        // you can put a call to your server containing the 
        // line's current text with something like this:
        // var curText = $(this).val();
    }
}
于 2012-05-11T16:03:37.017 に答える
0

これは最後を選択します.textline

$('.textline').last().text()
于 2012-05-11T16:07:48.630 に答える