在访问另一页面后保留浏览器滚动位置 - php

我正在使用JS,JQuery和PHP,试图解决无限滚动问题。问题是,如果您在页面上滚动很长一段时间,并且用ajax加载了更多页面,然后单击链接转到新页面,那么在使用浏览器时如何自动转到旧页面中的同一位置新页面上的返回按钮?

。新页面使用ajax滚动加载。

php参考方案

我想出的解决方案是在离开页面之前,将每个页面与相关数据一起存储。

需要以下信息来保持滚动位置:

页面ID(页面唯一)
页面数据(所有页面均为html,请谨慎处理过期的数据)
分页页码(仅在此页面为供稿时适用)
当前的X,Y滚动位置
时间戳记

加载下一页时,可以使用本地存储来存储先前的信息。返回上一页时,在存储器中查找PageID。如果存在,则抓住X或Y坐标并将页面移到该位置。这需要一些策略性思考,因为如果页面是延迟加载(无限滚动)类型的页面或订阅源,则您需要已经有数据,或者准备根据页面位置查找数据。

如果您的整个网站都是基于javascript的并且使用的是HTML 5历史记录Api,那么构建此系统最简单。防止重新加载整个页面可以帮助减轻服务器的负担。如果您担心最新的过期数据,可以将页码发送到服务器,并获取相应的数据以填写过期的内容。

jQuery val函数在隐藏字段上不起作用? - javascript

这是我的HTML代码:<div style='display:none;' id='allformid'> <div> <form action='#'> <input type='text' name='name' …

使用jQuery检测表单提交完成 - php

众所周知,您无法通过ajax创建文件下载。但是,您可以提交一个将创建下载提示的表格。当用户按下按钮时,我正在生成一个很大的文件,因此我显示“请稍候”样式的消息。我的问题是如何检测表单提交的完成时间,从而显示对话框?(这是隐藏消息) php参考方案 也许你应该尝试这样的事情http://www.iamkumaran.com/xdownloader-a-flas…

写一行到javascript文件 - javascript

我正在使用数组来显示网站中的一些图像:var paintingImages; paintingImages = [ { url: 'images/objects/ron.jpg', alt: 'ron' } ]; 该js代码写在paintings.js中,我的主要js代码写在main.js文件中我已经为艺术家制作了这个…

验证php中的javascript对象 - php

在我的用户界面中,用户可以构建一些javascript对象,例如:var box = { "width": "100px", "height": "200px", "click": function () { alert("You clicked t…

我如何反序列化字符串? - php

我有一个菜单系统,该菜单系统使用拖放树结构来使用户易于修改。当javascript对字符串进行序列化时,它会通过以下方式进行处理:// Assume each of these items has an ID on with the respective numbers attached Menu Item 1 + Menu Item 2 + Menu It…