Ajax jquery在焦点上发送操作并查看文本行

Ajax jquery在焦点上发送操作并查看文本行,ajax,jquery,Ajax,Jquery,我们有一个有很多行文字的页面 <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 w

我们有一个有很多行文字的页面

<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,并使用jquery将此ID发送到服务器? 1) 第一次发送-当页面聚焦超过5秒(实际查看)时,需要从访客屏幕发送最后可见的lineID。 2) 当页面向下滚动时,需要发送最后一行可见内容(稍微考虑一下超时)


使用jquery可以吗?有任何示例吗?

.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();
    }
}
$(“.textline”)。每个(函数(){
var offset=$(this.offset().top-$(window.scrollTop();

如果(偏移量,则选择最后一个
.textline

$('.textline').last().text()

不知道怎么做,但只是注意到您还应该捕获resize事件在第二个答案中,我看不出您在哪里发现当前行是最后一行,看起来所有可见行都会运行注释部分