infinite scroll
Народ помогите! второй день не могу победить...
Нашел пример реализации вечного скрорлла: http://code.msdn.microsoft.com/VBASPN...=417319407 (То что мне нужно- тянуть данные из xml файла) Но в нем при прокрутке на страницу вываливаются сразу все данные из xml, при следеющей прокрутке процесс повторяется... Мне же нужно чтобы допустим при первой прокрутке вываливалось первые 10 записей, при второй- следующие 10 записей... и так до конца файла. код код страницы default.aspx: <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <link rel="stylesheet" href="Styles/Site.css" type="text/css" /> <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script> <script type="text/javascript"> $(document).ready(function () { function lastPostFunc() { $('#divPostsLoader').html('<img src="images/bigLoader.gif">'); //send a query to server side to present new content $.ajax({ type: "POST", url: "Default.aspx/Foo", data: "{}", contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { if (data != "") { $('.divLoadData:last').after(data.d); } $('#divPostsLoader').empty(); } }) }; //When scroll down, the scroller is at the bottom with the function below and fire the lastPostFunc function $(window).scroll(function () { if ($(window).scrollTop() == $(document).height() - $(window).height()) { lastPostFunc(); } }); }); </script> </head> <body> <form id="form1" runat="server"> <div style="height: 900px"> <h1> Simply scroll down to see new content loading...<asp:Label ID="Label1" runat="server" Text="1"></asp:Label> </h1> </div> <div class="divLoadData"> </div> <div id="divPostsLoader"> </div> </form> </body> </html> Код default.aspx.vb: Код:
Imports System.Web |
Значит сделайте так, чтоб сервер отдавал по 10 записей.
|
в примере выше он отдает 5 записей, но при каждом скролле эти записи повторяются(с 1 по 5 записи в xml), а как сделать чтоб он понимал что первые 5 записей он уже отдал, и при следующем скролле появились уже с 5 по 10 записи. Пробовал в скрипте добавить параметр страниц( url: "Default.aspx/Foo?page=1",)... где page менялось бы от 1 до ....n, но из за записи "<System.Web.Services.WebMethod()> _" я не могу получить параметр "page"
|
Другой вопрос
при приведенном ниже коде все работает на ура <script type="text/javascript"> $(document).ready(function () { function lastPostFunc() { $('#divPostsLoader').html('<img src="images/bigLoader.gif">'); //send a query to server side to present new content $.ajax({ type: "POST", url: "Default.aspx/Foo", data: "{}", contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { if (data != "") { $('.divLoadData:last').after(data.d); } $('#divPostsLoader').empty(); } }) }; //When scroll down, the scroller is at the bottom with the function below and fire the lastPostFunc function $(window).scroll(function () { if ($(window).scrollTop() == $(document).height() - $(window).height()) { lastPostFunc(); } }); }); </script> Но не работает при добавлении вместо data: "{}", строку data: 'number='+scrollEngine.number+'&count='+scrollEngi ne.count, В чем заключается ошибка? |
Часовой пояс GMT +3, время: 15:08. |