Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击“上一步”按钮后处理GUI_Javascript_User Experience - Fatal编程技术网

Javascript 单击“上一步”按钮后处理GUI

Javascript 单击“上一步”按钮后处理GUI,javascript,user-experience,Javascript,User Experience,在用户进入条目页面之前,我使用一个小的JS将条目标记为单击即读。 当用户单击后退时,我使用的removeClass似乎无法保持其效果 有没有办法强制这种返回行为?当用户单击“返回”时,浏览器会从头开始重新加载页面(Firefox除外,Firefox会记住表单值),旧页面的Javascript及其效果将消失 为了解决这个问题,您可以将页面的状态持久保存在cookie中,然后在页面加载时读取cookie并使用。使用JS执行此操作的唯一方法是存储包含用户访问的项目的cookie,并在页面加载时将coo

在用户进入条目页面之前,我使用一个小的JS将条目标记为单击即读。 当用户单击后退时,我使用的
removeClass
似乎无法保持其效果


有没有办法强制这种返回行为?

当用户单击“返回”时,浏览器会从头开始重新加载页面(Firefox除外,Firefox会记住表单值),旧页面的Javascript及其效果将消失


为了解决这个问题,您可以将页面的状态持久保存在cookie中,然后在页面加载时读取cookie并使用。

使用JS执行此操作的唯一方法是存储包含用户访问的项目的cookie,并在页面加载时将cookie中的条目标记为“已访问”。缺点是,在加载到视图中的项目和标记为已访问的项目之间会有一个小的延迟(有点像StackOverflow上的一个,带有用户忽略和喜爱的标记)

除此之外,您还可以使用一些服务器端代码来记住会话中访问的条目

如果条目是元素,则可以使用以下样式设置它们的样式:

a:visited {}

IE 8、Firefox和其他浏览器只需按后退按钮即可记住表单条目。您可以使用它在页面中存储一些状态,以便在用户点击刷新或返回时使用

在页面的某个地方创建一个隐藏的文本区域,并在其中存储您的额外状态。我使用onbeforeunload隐藏状态,然后使用onload再次将其拉出

不幸的是,IE6和IE7不支持在后台记住表单值或重新加载表单值,因此如果您关心这些浏览器,您将不得不求助于cookies之类的工具。记住要保持cookies中存储的数据量较小,因为每次请求时都会将数据发送到服务器。你还需要有一些方法来清除那些曲奇


当我想保持大量不同的状态时,我使用。

正如建议的那样,您可以使用cookies。或者,如果您不想这样做,您可以将信息存储在隐藏表单字段中,并在页面加载(或domready)时读取该值并根据需要设置页面状态。

对于该特定问题,解决方案太复杂,但谢谢:)如果您使用库,Cookie一点也不复杂。