日期:2014-05-17  浏览次数:20515 次

大虾们 页面形式的考试系统全屏后如何防止切换?
正在做一个在线考试系统,asp做的。
请问 asp 能实现吗?麻烦告诉个思路哈
需要防止用鼠标或键盘等切出全屏。。。
谢谢,不胜感激

------解决方案--------------------
控制鼠标键盘切出屏幕的,一般用javascript来实现。
首先,你要实现屏蔽浏览器的工具栏,一般在打开试卷的页面上,利用window.open()方法提供的参数,把浏览器状态栏、地址栏、工具栏给屏蔽掉。

其次,屏蔽屏幕鼠标右键,屏蔽alt+左右方向键的前进后退效果,屏蔽F5的刷新,屏蔽alt+tab的切换,无非是监听页面的鼠标点击和按钮按下的事件,这个到网上找,有现成的代码。
------解决方案--------------------
HTML code

function   KeyDown(){ //屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键  
            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;}
            if((window.event.altkey)&&(window.event.keyCode == 27)){alert("认真答题!");}
        }  
        function   Showhelp(){  
                alert("认真答题!"); 
        return   false;  
        } 
        </script>
    </HEAD>
    <body onload="LoadPage()" MS_POSITIONING="GridLayout" style="BACKGROUND-COLOR: #6699ff"
        onkeydown="KeyDown()" onhelp="Showhelp();return   false;" onblur="document.focus();">