这是ajax的一个经典问题,很多框架都提供了解决方案,重点是模拟浏览器的前进后退。
对于IE,可以用一个隐藏框架,对框架内容的导航会使得前进后退按钮被触发。
对以FF,可以用Hash,即改变http://www.url.com/#abc井号后面的部分,前进后退按钮同样被触发。
这样就能既让浏览器前进后退按钮被触发,同时又不离开本页面。具体方法如下:
1.resize事件 (window).resize(function() { var width = (this).width(); var height = (this).height(); });
2.js条用这个方法 function closewindow{ history.go(-1); }
3.<input type="button" value="后退" onClick="history.back();"> 或 <input type="button" value="后退" onClick="history.go(-1);">
4.window.location.replace Location对象的replace()方法将用指定的URL替换浏览器历史列表中的当前URL,而不是在历史列表中创建一个新的项,因此,就不能使用IE的后退按钮来返回原始文档了。 2.window.open(FF无效...
❷ java/JSP,JS设置按钮禁用
完全正确!
以下几种方法也行
document.getElementById("button1").disabled=true;
$("#button1").attr("disabled","disabled");
❸ jquery mobile+html5 写的页面 如何禁用手机后退按钮。或者说如何禁用页面后退。
html5的popState事件响应的时候,手动调用pushState。应该就可以了。。
我没试过,就讲个思路。
其实就是,每次监听到后退的事件的时候,我在响应事件里头,手动调用一次前进(回到原来页面)。这样就能实现停留在原来页面了。
思路二,依然在popState的响应函数里头,我觉得,应该有某个方法,可以截断事件的默认响应行为。。就是截断(popState接下去的行为,从而让浏览器不后退。)。记得jquery里头貌似有个stopDefault开头的一个函数,忘了。
❹ javascript怎么禁用浏览器后退按钮
<scriptlanguage="JavaScript">利用JS产生一个“前进”的动作,以抵消后退功能,这种方法应该是最简洁的,并且不需要考虑用户连点两次或多次“后退”的情况,缺点是当用户端禁用了JavaScript之后即失效。
javascript:window.history.forward(1);
</script>
<AHREF="logout.do"onclick="javascript:location.replace(this.href);event.returnValue=false;">用location.replace从一个页面转到另一个页面。这种方法的原理是,用新页面的URL替换当前的历史纪录,这样浏览历史记录中就只有一个页面,后退按钮永远不会变为可用。我想这可能正是许多人所寻求的方法,但这种方法仍旧不是任何情况下的最好方法。这种方法的缺点在于:简单地运用Response.Redirect将不再有效,这是因为每次用户从一个页面转到另一个页面,我们都必须用客户端代码清除location.history。另外还要注意,这种方法清除的是最后一个访问历史记录,而不是全部的访问记录。
Logout(BackDisabled)
</A>
当键盘敲下后退键(Backspace)后
1、禁止浏览器自动后退
2、但不影响密码、单行文本、多行文本输入框等的回退操作
<scripttype="text/javascript">
//处理键盘事件禁止后退键(Backspace)密码或单行、多行文本框除外
functionbanBackSpace(e){
varev=e||window.event;//获取event对象
varobj=ev.target||ev.srcElement;//获取事件源
vart=obj.type||obj.getAttribute('type');//获取事件源类型
//获取作为判断条件的事件类型
varvReadOnly=obj.getAttribute('readonly');
varvEnabled=obj.getAttribute('enabled');
//处理null值情况
vReadOnly=(vReadOnly==null)?false:vReadOnly;
vEnabled=(vEnabled==null)?true:vEnabled;
//当敲Backspace键时,事件源类型为密码或单行、多行文本的,
//并且readonly属性为true或enabled属性为false的,则退格键失效
varflag1=(ev.keyCode==8&&(t=="password"||t=="text"||t=="textarea")
&&(vReadOnly==true||vEnabled!=true))?true:false;
//当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效
varflag2=(ev.keyCode==8&&t!="password"&&t!="text"&&t!="textarea")
?true:false;
//判断
if(flag2){
returnfalse;
}
if(flag1){
returnfalse;
}
}
//禁止后退键作用于Firefox、Opera
document.onkeypress=banBackSpace;
//禁止后退键作用于IE、Chrome
document.onkeydown=banBackSpace;
</script>
❺ 前端javascript如何阻止按下返回键页面回退
document.onkeydown=function(e){
e.stopPropagation();//阻止事件冒泡传递
e.preventDefault();//阻止浏览器默认事件的发生
//yourcode
if(e.keyCode==8){//keyCode==8表示按内下的回退容按钮
}
}
❻ 安卓手机怎么禁用返回这个物理按键的功
设置-开发者选项-使用返回键强制关闭应用,应该是这个了。
❼ 手机屏幕上返回键如何去掉
手机屏幕上返回键去掉方法;以小米手机操作为例:
1、首先选择打开手机上的设置。如下图所示。
❽ 我就想问下,js到底能不能在某个html页面禁止浏览器的后退按钮。因为表单提交后想再回去是不现实的
这种可以采用一下方式:
1、回退后,产生一个前进事件
这种方式,不算是一个满意的解决方式。因为用户能体验到,界面的后退,前进。体验不好。
javascript:window.history.forward(1);
2、禁用键盘的backspace键
这种做法,没有办法消除鼠标的误操作
<scripttype="text/javascript">
//处理键盘事件禁止后退键(Backspace)密码或单行、多行文本框除外functionbanBackSpace(e){varev=e||window.event;//获取event对象varobj=ev.target||ev.srcElement;//获取事件源vart=obj.type||obj.getAttribute('type');//获取事件源类型//获取作为判断条件的事件类型varvReadOnly=obj.getAttribute('readonly');
varvEnabled=obj.getAttribute('enabled');
//处理null值情况vReadOnly=(vReadOnly==null)?false:vReadOnly;
vEnabled=(vEnabled==null)?true:vEnabled;
//当敲Backspace键时,事件源类型为密码或单行、多行文本的,//并且readonly属性为true或enabled属性为false的,则退格键失效varflag1=(ev.keyCode==8&&(t=="password"||t=="text"||t=="textarea")
&&(vReadOnly==true||vEnabled!=true))?true:false;
//当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效varflag2=(ev.keyCode==8&&t!="password"&&t!="text"&&t!="textarea")
?true:false;
//判断if(flag2){
returnfalse;
}
if(flag1){
returnfalse;
}
}
//禁止后退键作用于Firefox、Operadocument.onkeypress=banBackSpace;
//禁止后退键作用于IE、Chromedocument.onkeydown=banBackSpace;
</script>
3、终极方案:
也是查找了好多资料才找到的,这种方式,可以消除 后退的所有动作。包括 键盘、鼠标手势等产生的后退动作。
<scriptlanguage="javascript">//防止页面后退
history.pushState(null,null,document.URL);
window.addEventListener('popstate',function(){
history.pushState(null,null,document.URL);
});
</script>