欢迎光临

木子屋

标题: 实现浏览器全屏窗口的几种方法

作者: admin

日期: 2006-06-27 04:17 PM

分类: 脚本语言

内容: IE 浏览器隐身大法
浏览网页，时常会发现自己的浏览器窗口不见了，但网页内容还在。这种效果是不是很神奇呢？实现此种功能只要有三种原理，按实现方法的不同，给它们各起了个名字，分别是：瞒天过海法、借尸还魂法和返璞归真法。不要被它们的名字吓着了，其实实现起来并不困难，只要看了下面的内容，就明白个中道理了！
一、瞒天过海法-javascript
我们知道，显示器的分辩率大小决定了我们看到的程序窗口的面积大小，分辩率越大，窗口面积越大，看到的内容就越多。但并不是说显示面积越大就越好，因为分辩率的变化会带来菜单文字的变化，可能会影响软件界面的字体美观。此乃题外话，就不细说了。浏览器同样是一种程序，其窗口的大小，我们可以利用脚本语言来控制调整，这样我们就可以实施瞒天过海法来达到全屏目的，方法是在网页文件的头部，也就是 <head> 与 </head> 标签之间加上下面这段 javascript 代码：
<script>
<!--
function omiga_window(){
window.open("12.htm","","fullscreen=1,menubar=0,toolbar=0,directories=0,location=0,
status=0,scrollbars=0")
}
//-->
</script>
代码功能是由一个网页调出另一个浏览器窗口，加上设置语句，设置新窗口的大小为全屏，然后新的网页内容就显示在此窗口里，借此实现了全屏。
不要忘记在网页文件的 <body> 标签里加上加载网页里调用函数的代码。代码设置如下：
<body onload="omiga_window()" onBlur="self.close()" scroll="no">
二、借尸还魂法
可能有些朋友见到代码就害怕。告诉你，不怕！不懂脚本代码的我们可以使用 Dreamweaver 的插件，借尸还魂！实现全屏！
首先我们到点击下载 “MFX-fullscreen.mxp”插件 到自己的硬盘里，接着打开 Dreamweaver4 菜单栏“Commands”，选择“Manage Extensions”命令，打开插件管理工具“Macromedia Extension Manager”，按“Ctrl + i”快捷键把插件安装好。
接下来的事情就相当轻松了，重新启动一次 Dreamweaver4 ，按“Shift + F3”打开行为面板，再按快捷键“Ctrl + Tab”进入源代码窗口，点击行为面板的加号按钮，在弹出的菜单中选择“MFX”里的“MFX-fullscreen”命令马上可以看到 <head> 和 </head> 是加入了全屏的代码，同时 <body> 里也加入了“onLoad”加载函数。按 F12 就可以看到全屏的效果。注意，没有进入源代码窗口该命令呈灰色，是不可选的。
没有插件的朋友可以复制以下代码到网页文件：
<script language="JavaScript">
<!--
function MachakFull(Ie,other){
//Copyright ?1999 m.milicevic machakjoe@netscape.net jjooee@tip.nl
x=screen.availWidth;
y=screen.availHeight;
target = parseFloat(navigator.appVersion.substring(navigator.appVersion.indexOf('.')-1,navigator.appVersion.length));
if((navigator.appVersion.indexOf("Mac")!=-1) &&(navigator.userAgent.indexOf("MSIE")!=-1) &&(parseInt(navigator.appVersion)==4))
window.open(other,"sub",'scrollbars=yes');
if (target>= 4){
if (navigator.appName=="Netscape"){
var MachakFull=window.open(other,"MachakFull",'scrollbars=yes','width='+x+',height='+y+',top=0,left=0');
MachakFull.moveTo(0,0);
MachakFull.resizeTo(x,y);}
if (navigator.appName=="Microsoft Internet Explorer")
window.open(Ie,"MachakFull","fullscreen=yes");
}
else window.open(other,"sub",'scrollbars=yes');
}
//-->
</script>
</head>
当然，<body> 里也加入了“onLoad”加载函数，代码如下：
<body bgcolor="#FFFFFF" text="#000000" onLoad="MachakFull('full_window.htm','')">
看了前面的两种方法，分析源代码，我们注意到，都必须先打开一个原来的窗口，我们称之为A，然后再调出一个新的浏览器窗口，我们称之为B。当 B 窗口打开时，就实现全屏了，并且位于最前面。但前面的两种方法都没有把原来的窗口 A 窗口关闭。我们可以在 <body> 里加入关闭的代码“onBlur="self.close"”或者“onBlur="javascript:window.closer()"”。可是，此两种关闭都会弹出一个关闭的提示框，无疑它影响了整个网页的显示效果！有办法解决么？当然有！请看下面的返璞归真法：
三、返璞归真法
此法是最完美的一种全屏方式，实现代码与相应简单，一个完整的全屏网页代码如下：
<html>
<head>
<title>123</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script>
<!--
function omiga_window(){
window.open("full_window.htm","","fullscreen,scrollbars")
}
//-->
</script>
</head>
<body onload="omiga_window()" onblur="focus();closes.Click();" scroll="no">
<object id=closes type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<param name="Command" value="Close">
</object>
<p> </p>
<p> </p>
全屏！
</body>
</html>
实现全屏的代码跟之前的两种方法相类似，差别就在于可以自动关闭原来的A窗口，并且不出现提示。不出现提示的奥妙在于 <body> 标签里的：
onblur="focus();closes.Click();"
以及<body>和</body>之间的：
<object id=closes type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<param name="Command" value="Close">
</object>
要实现返璞归真完美全屏方式，不要漏了上面两段代码哟！

+ 查看当前日志评论 (1)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.633 ms

返回

标题: 实现浏览器全屏窗口的几种方法

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.633 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.684 ms

返回