Can';javascript重定向后,请不要返回
我目前在我的页面上运行一个函数,根据启动页面上选择的内容来更改页面 我当前的方法是Can';javascript重定向后,请不要返回,javascript,jquery,Javascript,Jquery,我目前在我的页面上运行一个函数,根据启动页面上选择的内容来更改页面 我当前的方法是location.href='/this/page/',但当我在浏览器中单击“后退”按钮时,它确实会返回,但会返回大约5毫秒(至少看起来是这样),并像刷新一样返回页面。无论我点击后退多少次,它都不会返回到我的初始页面 我第一次点击后退,它完成了我上面所说的,第二次点击会转到之前的页面 编辑:如果有必要的话,我会把它们放在开关中 编辑:这里是我用来切换页面的html/javascript。此代码仅在我的启动页上 HT
location.href='/this/page/'
,但当我在浏览器中单击“后退”按钮时,它确实会返回,但会返回大约5毫秒(至少看起来是这样),并像刷新一样返回页面。无论我点击后退多少次,它都不会返回到我的初始页面
我第一次点击后退,它完成了我上面所说的,第二次点击会转到之前的页面
编辑:如果有必要的话,我会把它们放在开关中
编辑:这里是我用来切换页面的html/javascript。此代码仅在我的启动页上
HTML:
您应该在重定向的登录页上创建cookie,如果cookie不存在,则只执行启动页上的location.href
代码。这样,当用户回击时,它们不会立即被重定向。您描述的问题无法通过您的解释重现。您缺少重要的详细信息,请尝试发布。涉及多少页面以及它们的url是什么?启动页面是否有专用url,或者是通过AJAX加载的?@mellamokb启动页面有专用url。我对8个不同的页面使用这种方法,它们都做相同的事情。对于其中四个,它们只是location.href='/pageX/'
和其他四个相同,但在一个目录中。@Fabricio Matté如果我知道是什么原因,我可以给你重要的细节,但在这种情况下,我不能。看起来你碰到了Chrome bug。这段代码再现了你在Chrome中描述的问题,但不是Firefox/IE。我从未使用过cookies,所以我不想使用它们。我宁愿知道它为什么这样做,这样我就可以解决它。@Spedwards您的位置。href
代码在您加载页面后立即执行。您可以通过将重定向代码放在条件语句中来解决这个问题。
<select id="ds">
<option>>-- Select --<</option>
<option value="1">Blue Sky Travel</option>
<option value="2">Paterson's Curse</option>
<option value="3">Eugowra Progress Society</option>
<option value="4">Eugowra Bushranger County</option>
</select>
$('select#ds').change(function(){
var i = $(this).val();
switch(i) {
case "1":
location.href='/bst/'
break;
case "2":
location.href='/pc/'
break;
case "3":
location.href='/eps/'
break;
case "4":
location.href='/w8/'
break;
default:
}
}).change();