我看到一些插件在滚动到页面底部时会加载更多内容,但是大多数插件都链接到数据库中具有自动增加ID的列。我只需要使用XML文件即可。
有什么想法吗?
非常感谢。
答案 0 :(得分:0)
xml文件在服务器上,但它 可以用jQuery解析我想? 我可以使用ajax并解析整个 XML文件,但这会打败 无限滚动/延迟加载?
如果您将XML发送到客户端,则将导致浏览器解析它并构建DOM。根据它的大小(几千字节?兆字节?),这可能很快,或者可能需要一段时间。默认情况下将所有if发送到浏览器也会占用你的带宽,是的,以某种方式破坏了延迟加载的目的。
无限滚动是一个UI范例,因此即使您始终将整个XML文件发送到浏览器,也可以实现它。同样,这取决于您想要实现的目标 - 节省带宽或只是“动态”创建内容。
假设您将文件保留在服务器上,因为它太大了:
来自无限滚动插件的假设请求可能看起来像
http://server.name/path/data.aspx?start=516&count=10
然后您的data.aspx将使用XPath查询从第516个元素中检索10个XML元素:
/root/data[position() >= 516 and position() < 516 + 10]
然后,您可以从中构造HTML或将其作为原始XML发送,并通过客户端上的jQuery进行评估。
可能有定制的框架可以完成所有这些,但如果我要实现这样的系统,上面的内容大致就是我要做的。