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, время: 06:37. |