js如何使浏览器的后退和前进功能失效(IE FF 谷歌)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js如何使浏览器的后退和前进功能失效(IE FF 谷歌)相关的知识,希望对你有一定的参考价值。
js如何使浏览器的后退和前进功能失效(IE FF 谷歌)比如我从http://localhost/test.html 中点击其他的链接并跳转到该链接,在新的链接中的浏览器窗口点击后退按钮,不要让他跳转到原来的链接(http://localhost/test.html ),这个用js如何实现呢 有什么好的办法吗?而且要能在IE FF 谷歌浏览器中都能起作用。
window.open() 不是我想要的效果 是连接的那种
可以用一个按钮.
<input id="Button2" type="button" value="返回" onclick="history.back(-1)"/>
方法二:提示跳转
Response.Write("<script language=javascript>alert(\'注册成功,请登陆!\');this.top.location.href=\'"&urlgo&"\';</script>") 参考技术A 在新的链接中的浏览器窗口点击后退按钮,不要让他跳转到原来的链接(http://localhost/test.html )??
不太看的懂
<input id="Button2" type="button" value="返回" onclick="history.back(-1)"/>这个不行? 参考技术B 你跳转时用 window.open 就可以啦~
------------
location.replace .. 没其他方法了。
如何使功能仅在第一个主体加载时起作用?
【中文标题】如何使功能仅在第一个主体加载时起作用?【英文标题】:How to make a function only work on first body onload? 【发布时间】:2011-05-11 23:48:15 【问题描述】:我有一个分类网站,当用户第一次进入网站时,会在 body onload 事件上提交一个表单:
表单已提交并在同一页面上的 iframe 中显示其结果。
问题是我不希望每次用户在浏览器中单击后退或前进时都调用 submit_form() 函数,那么如何防止浏览器在使用后退/前进按钮时提交它?
例子:
用户进入网站时提交表单。 表单在 iframe 中显示搜索结果 用户单击其中一个结果并显示新页面 用户点击返回按钮再次转到搜索结果 用户发现表单再次被重新提交,因为 body onload 触发器
我应该如何解决这个问题?
谢谢
【问题讨论】:
@Chinmayee 为什么要从标签中删除 php 和 mysql?我认为它们是相关的。 这个问题是通用的,可以应用于任何语言,如 java、.net。数据库技术也与这个问题无关。第三,我们可以为任何问题设置 5 个标签,所以我认为 session/cookie 是比 php 和 mysql 更相关的标签 @Chinmayee 你怎么知道他想要会话或cookie?它们确实有一些相关性,但是有 php 和 mysql 更有帮助,因为你知道他会考虑服务器端和/或数据库方法。 【参考方案1】:仅客户端解决方案:设置cookie。
【讨论】:
对于禁用 cookie 的人,您可以对 URL 进行后备(例如提供参数 ?fristrun=true)【参考方案2】:你用 php 标记了这个问题,所以我认为使用服务器端会话更好
开始一个会话,初始化一个会话 varto 0用户进入网站时提交表单。
如果 session var == 0 则显示结果表单在 iframe 中显示搜索结果
将会话变量设置为 1用户单击其中一个结果并显示新页面 用户点击返回按钮再次进入搜索结果
这不会发生:用户发现表单再次被重新提交,因为 body onload 触发器
【讨论】:
不会提交仍然发生,只有 php 不返回响应?我认为解决方案需要基于客户端/cookie 才能首先停止提交.. 好的,cookie 也可以。我只是控制第二页上的会话以上是关于js如何使浏览器的后退和前进功能失效(IE FF 谷歌)的主要内容,如果未能解决你的问题,请参考以下文章