function window.onbeforeunload(){
if(event.clientX>360&&event.clientY<0||event.altKey){
window.event.returnValue="确认退出?"
}
}
解决方案 »
- 页面每隔10秒从后台方法中取得数值刷新页面
- CGI程序中间要求弹出的网页为什么要到整个程序执行完之后再弹出?
- 【JS中 **Util什么意思?】
- 请教一个js切换问题
- 如何用js打开IE?
- 在WEB开发中大量使用JavaScript好不好
- 用JS分解TextArea中的值
- 当checkbox默认为选中时,背景为白色
- 请问Visual Studio.NET 中的JavaScript.NET和JavaScript是什么关系
- think PHP5 控制器中获取表单file文件获取不到
- |zyciis| 200分求: 谁有一个像网易 太平洋电脑网 的商品对比功能的JS 谢谢
- 怎样用js读取一个文本文件?
我认为window.event.clientY<0方法更多考虑的是安全吧,假如clientY不限制,完全可以用一个新页面来操作本页面(假如刷新本画面),不安全。看来窗口最小化后指定关闭页面或者关闭页面组的clientY指定是大于0了...貌似必须要写2个if来判断了,复杂的很啊
if (event.clientX > document.body.clientWidth && event.clientY < 0){}
</script>刷新窗体。<SCRIPT for=window event= onbeforeupdate>
if (event.clientX > document.body.clientWidth && event.clientY < 0){}
</script>
否则坐标会不准确...
function KeyDown(){ //屏蔽鼠标右键、Ctrl n、shift F10、F5刷新、退格键
//alert("ASCII代码是:" event.keyCode);
if ((window.event.altKey)&&
((window.event.keyCode==37)|| //屏蔽 Alt 方向键 ←
(window.event.keyCode==39))){ //屏蔽 Alt 方向键 →
alert("不准你使用ALT 方向键前进或后退网页!");
event.returnValue=false;
}
if ((event.keyCode==8) || //屏蔽退格删除键
(event.keyCode==116)|| //屏蔽 F5 刷新键
(event.keyCode==112)|| //屏蔽 F1 刷新键
(event.ctrlKey && event.keyCode==82)){ //Ctrl R
event.keyCode=0;
event.returnValue=false;
}
if ((event.ctrlKey)&&(event.keyCode==78)) //屏蔽 Ctrl n
event.returnValue=false;
if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift F10
event.returnValue=false;
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
window.event.returnValue = false; //屏蔽 shift 加鼠标左键新开一网页
if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt F4
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
return false;}
}
function Showhelp(){
alert("Wrong!");
return false;
}
</script>屏蔽关闭的就这么多
((window.event.altKey)&&(window.event.keyCode==115))Alt F4 键
等等条件,判断不是这些条件的就是关闭事件了,当然Alt F4 也是关闭事件你干吗就不懂转一个弯呢?
再次请教下大哥...本人愚钝,别骂我哦...
感谢chinmo的点拨啊,的确有些地方我转不过弯,以后还要多加努力,先去试验下,成功了马上结贴。
if (event.altKey && event.keyCode==37) {
alert('Alt <-');
}
后来我试了下event.altKey && event.keyCode==37 就可以的。更正下~~~,这不是我钻牛角尖吧~~
可以看下下面我的例子:
onkeypress
document.onkeypress = function (evt) {
alert(event.keyCode)
if(document.all) {
if(event.shiftKey&&event.keyCode==65)
alert("按了Shift+a");
}
return true;
}
onkeypress事件event.keyCode是可以取到的。
onbeforeunload
window.onbeforeunload = function(evt) {
alert(window.event.keyCode)
if (window.event.altKey && window.event.keyCode == 37) {
alert("按了Alt+<-");
}
}
onbeforeunload事件event.keyCode却取不到。不知道为什么,难道这事件触发的太晚了???
请大虾们求教!!!
function window.onbeforeunload()
{
if (event.clientX>document.body.clientWidth && event.clientY<0||event.altKey)
{
window.event.returnValue="这个事件不是刷新触发的";
}
}
</script>
这个呢?
alert(window.event.keyCode);
if (window.event.altKey && window.event.keyCode == 37)
{
alert("按了Alt+<-");
}
}
这个不对?
我怎么测试都可以?
function window.onbeforeunload()
{
if (event.clientX>document.body.clientWidth && event.clientY <0 ¦ ¦event.altKey)
{
window.event.returnValue="这个事件不是刷新触发的";
}
}
</script>
这个?
function window.onbeforeunload() {
alert(window.event.keyCode);
if (window.event.altKey && window.event.keyCode == 37)
{
alert("按了Alt+ <-");
}
}
这个,我试验了下window.event.altKey可以,是true.
但是window.event.keyCode却是0??不知道为什么~~
function window.onbeforeunload()
{
if (event.clientX>document.body.clientWidth && event.clientY <0 ¦ ¦event.altKey)
{
window.event.returnValue="这个事件不是刷新触发的";
}
}
</script>
我也不知道你的
if(event.keyCode==32){realkey='\' 空格\''}
if(event.keyCode==13){realkey='\' 回车\''}
if(event.keyCode==27){realkey='\' Esc\''}
if(event.keyCode==16){realkey='\' Shift\''}
if(event.keyCode==17){realkey='\' Ctrl\''}
if(event.keyCode==18){realkey='\' Alt\''}
//78 Ctrl+N
//37 Alt+ 方向键 ←
//39 Alt+ 方向键 →
//116 F5 刷新键
//82 Ctrl + R
//121 shift+F10
//115 屏蔽Alt+F4
//屏蔽 shift 加鼠标左键新开一网页
{
alert('禁止刷新!');
event.keyCode=0;
event.returnValue=false;
}