window.open全屏无法在Windows 7 IE中运行

时间:2012-05-16 13:52:06

标签: javascript

我在Javascript下面使用了全屏打开浏览器(没有关闭按钮)

popupwindow = window.open("name.aspx?Email="+Email+"&AssessmentID="+AssessmentID+"&Attempts="+Attempts+"","List","menubar=no,fullscreen=yes,directories=no,scrollbars=yes,resizable=no,close=no,top=0,left=0,right=0,titlebar=no,toolbar=no,statusbar=no");    

但它确实在windows xp IE中完美运行....但是在Windows 7默认版IE浏览器中无法正常工作..请为我做一些......

我使用全屏进行在线考试..我只是不让用户切换到其他窗口......

由于

2 个答案:

答案 0 :(得分:6)

可以传递给fullscreen函数的window.open功能是专有的IE-only。已经在旧版本的Windows上,它会出现无法控制的行为,并且微软建议不要使用几年前(当时非正式地弃用该功能并将其更改为显示最大化的窗口 1 )。换句话说,你应该 NOT 使用这个标志。

到目前为止,坏消息,好消息;全屏功能有意义的唯一情况是视频和游戏。如果您正在使用视频,那么我强烈建议您使用闪存提供全屏支持(尽管目前对闪存有所有反斜杠,暂时它是唯一的全屏选项)并且如果您正在处理html5游戏IE支持没有意义,您可以使用fullscreen javascript APIsupported in about all browsers except IE)。

新的全屏API和旧的全屏IE标志之间的主要区别在于,用户现在显示非常清楚如何退出全屏,并显示一个巨大的对话框/警告,向用户显示他已进入全屏以防止滥用。


1如果您对详细信息感兴趣,IE6 SP2会将fullscreen=yes标记的行为从Kiosk模式更改为最大化模式here < / p>

答案 1 :(得分:2)

鉴于您的环境,最简单,最可靠的方法是编写一个简单的WinForms应用程序,它使用WebBrowser ActiveX,打开您的网站并全屏显示。

使用C#(因为Windows 7预安装了.NET 3.5),这将需要5到10行代码。

此外,您可以disable keys such as Windows key从桌面应用中删除可能会中断考试体验的应用,如果用户有多个,则将其他显示器删除,等等。

如果您有一个公共网站,最好的方法是将其部署为ClickOnce app - 无需手动安装或其他用户麻烦,只需点击“启动”,即可开始使用。适用于非管理员用户。