2016-10-19 83 views
0

对不起我不是在编码经历..读取数据

我用的是页面的滚动摆脱的document.body.scrollTop的值时,有一个window.onscroll事件在JavaScript中。有一个带有display = block的div,高度为60000. 我的内容位于具有固定位置的div中,因此始终停留在窗口的中心位置。

我在服务器上有十几个文本文件,每个60000行,每行可以有大约60个字符长。这些行提供了有关固定div内容发生的数据。

我的目标是根据文件行数据根据滚动值更新我的内容(使用javascript)。

我发现如何在每个请求中使用php中的文件从一个文件中获取一行(使用制表符),这似乎很快。

function readEvent($Dname,$Dvalue) { 
    $myobject = 'timelines/'.$Dname.'.txt'; 
    $ThisOne = new SplFileObject($myobject); 
    $ThisOne->seek($Dvalue-1); 
    $myResult = explode("\t", $ThisOne->current()); 
    return $myResult; 
} 

的Dvalue应的document.body.scrollTop,所以在javascript我有

window.onscroll = function() {timelineUpdate()}; 
function timelineUpdate() { 
    console.log(document.body.scrollTop); 
    var Devent = $readEvent(myDname,document.body.scrollTop); 
} 

当然,我不能做到这一点,从JavaScript调用PHP函数readEvent,传递参数给它并获得结果。 那么,我该如何做到这一点,我找不到方法。 或者我做错了?

回答

0

它通过ajax调用发生,通过这篇文章。 http://fatfolderdesign.com/173/content-load-on-scroll-with-jquery

取代JS,使用jquery(使用jquery支持/处理所有移动兼容性问题)并执行ajax调用。您需要传递文件和当前的起始值。并且在你的php脚本中需要获取参数并使用你提到的PHP函数读取内容。

即.. $ file = $ _GET ['filename']; $ pos = $ _GET ['pos'];

<?php echo readEvent($ file,$ pos); ? >

+0

谢谢Senthil – Greg

+0

我无法让它工作。 – Greg

+0

尽管尝试和搜索其他帖子,但我仍然失踪。我无法弄清楚如何从Javascript中调用我的php函数的文件名和位置参数,并将结果返回到javascript ... – Greg