js禁止后退 js 禁止 前进 后退

接下来我们要讨论的方法以后退按钮本身为中心,而不是浏览器缓存。这儿有一篇文章Rewiring the Back Button很值得参考。不过我注意到,如果使用这种方法,虽然用户点击一下后退按钮时他不会看到以前输入数据的页面,但只要点击两次就可以,这可不是我们希望的效果,因为很多时候,固执的用户总是能够找到绕过预防措施的办法。
  另外一种禁用后退按钮的办法是用客户端JavaScript打开一个没有工具条的窗口,这使得用户很难返回前一页面,但不是不可能。一种更安全但相当恼人的方法是,当表单提交时打开一个新的窗口,与此同时关闭表单所在的窗口。但我觉得这种方法不值得认真考虑,因为我们总不能让用户每提交一个表单就打开一个新窗口。
  那么,在那个我们不想让用户返回的页面是否也可以加入JavaScript代码呢?在这个页面中加入的JavaScript代码可用来产生点击前进按钮的效果,这样也就抵消了用户点击后退按钮所产生的动作。用于实现该功能的JavaScript代码如下:
所示:
<script language="JavaScript">
<!--
javascript:window.history.forward(1);
//-->
</script>
  同样地,这种方法虽然有效,但距离“最好的方法”还差得很远。后来我又看到有人建议用location.replace从一个页面转到另一个页面。这种方法的原理是,用新页面的URL替换当前的历史纪录,这样浏览历史记录中就只有一个页面,后退按钮永远不会变为可用。我想这可能正是许多人所寻求的方法,但这种方法仍旧不是任何情况下的最好方法。使用这种
方法的实例如下所示:
<A HREF="PageName.htm"onclick="javascript:location.replace(this.href);
js禁止后退 js 禁止 前进 后退
event.returnValue=false; ">
禁止后退到本页面的链接</A>
   禁止后退到本页面的链接!
  这种方法的缺点在于:简单地运用Response.Redirect将不再有效,这是因为每次用户从一个页面转到另一个页面,我们都必须用客户端代码清除location.history。另外还要注意,这种方法清除的是最后一个访问历史记录,而不是全部的访问记录。
  点击上面的链接,你将打开一个简单的HTML页面。再点击后退按钮,你可以看到这时打开的不是本页面,而是本页面之前的页面!(当然,你必须在浏览器中启用了客户端JavaScript代码。)
  经过一番仔细的寻寻觅觅之后,我发现仍旧无法找出真正能够完全禁用浏览器后退按钮的办法。所有这里介绍的方法都能够在不同程度上、以不同的方式禁止用户返回前一页面,但它们都有各自的局限。由于不存在能够完全禁用后退按钮的方法,所以最好的方案应该是:混合运用客户端脚本和服务器端脚本

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/301659.html

更多阅读

qq空间怎么禁止某人评论 微信能禁止别人评论吗

qq空间怎么禁止某人评论——简介 qq空间是一个很流行的社交平台,在上面我们可以发表自己的观点,分享知识,照片等等。发表说说或者日志之后经常会有好友作出评论。但有时候会遇到一些骚扰的人,发表一些自己不想看到的评论。那么怎么禁止

Node.js安装图解教程 nodejs npm安装教程

Node.js安装图解教程——简介 Node.js是一个基于Chrome JavaScript运行时建立的一个平台,用来方便地搭建快速的,易于扩展的网络应用Node.js借助事件驱动,非阻塞I/O模型变得轻量和高效,非常适合run across distributed devices的data-int

YUI Compressor CSS/JS 压缩神器 配置教程 yuicompressor

YUI Compressor CSS/JS 压缩神器 配置教程——简介YUI Compressor 是 java 程序,如果你对 java 很熟悉的话,大可快速的上手使用 yuicompressor.jar;如果对 java 很陌生,没关系,一样可以使用 YUI Compressor,只不过使用的是淘宝 UED 前端制

声明:《js禁止后退 js 禁止 前进 后退》为网友風聽説分享!如侵犯到您的合法权益请联系我们删除