2012-05-11 12 views
1

ie。我們有文字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 with image no reason</div> 

多行頁面如何獲得訪問者(不是整個頁面)的屏幕上最後確實可見lineID和發送該ID服務器與jquery? 1)首次發送 - 當頁面聚焦超過5秒(真正查看)時,需要從訪客的屏幕發送最後一個可見的行ID。 2)當頁面向下滾動需要發送最後一個可見行(想想一些小的超時)

jQuery的可能嗎?任何例子?

+0

不知道如何,但只是注意到你還應該捕獲調整大小事件 – Rodolfo

回答

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(); 
    } 
} 
+0

在第二個答案,我沒有看到你發現當前行是最後一個可見行,看起來像所有可見行將運行註釋部分 – Rodolfo

0

這個選擇最後.textline

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