难度: 中级
软件环境: Flash 4 or 5, NS or IE 4 or higher.
我们在这个例子中有很多的需求,但是我不是一个JAVACSCRIPT程序员,所以我请人在网页中实现这一效果。大多数人觉得全屏很烦人,所以我们总结出一条经验:决不 在大家不需要全屏的时候实现它,因为这样做很烦人,不是吗?那好,我们继续。
我们要将这些代码拷贝粘贴到我们的HTML文件中。我对这段代码做了细微的改动以允许我们实现这一功能。
我接到的许多邮件中经常包含以下两个常见的错误:
在FLASH中发布HTML文件的时候,会将之前的HTML文件中的内容覆盖,因此要先发布HMTL文件,再粘贴代码。
如果没有效果,清除一下IE中的临时文件。
如果你使用苹果的浏览器请查看页面最下面的附注。
你需要做两步简单的步骤以实现弹出全屏窗口:
拷贝并粘贴下列代码到HMTL文件中的<head>和</head>标签之间(你FLASH生成的HTML文件)
<script language="JAVASCRIPT">
<!--
function detectVersion()
{
version = parseInt(navigator.appVersion);
return version;
}
function detectOS()
{
if(navigator.userAgent.indexOf('Win') == -1) {
OS = 'Macintosh';
} else {
OS = 'Windows';
}
return OS;
}
function detectBrowser()
{
if(navigator.appName.indexOf('Netscape') == -1) {
browser = 'IE';
} else {
browser = 'Netscape';
}
return browser;
}
function FullScreen(){
var adjWidth;
var adjHeight;
if((detectOS() == 'Macintosh') && (detectBrowser() == 'Netscape')) {
adjWidth = 20;
adjHeight = 35;
}
if((detectOS() == 'Macintosh') && (detectBrowser() == 'IE')) {
adjWidth = 20;
adjHeight = 35;
winOptions = 'fullscreen=yes';
}
if((detectOS() == 'Windows') && (detectBrowser() == 'Netscape')) {
adjWidth = 30;
adjHeight = 30;
}
if(detectVersion() < 4) {
self.location.href = 'oldbrowser.html';
} else {
var winWidth = screen.availWidth - adjWidth;
var winHeight = screen.availHeight - adjHeight;
var winSize = 'width=' + winWidth + ',height=' + winHeight;
var thewindow = window.open('windowversion.html', 'WindowName', winSize);
thewindow.moveTo(0,0);
}
}
function MakeItSo(){
if((detectOS() == 'Windows') && (detectBrowser() == 'IE')) {
window.open('thefullscreen.html','windowname','fullscreen=yes');
} else {
onload=FullScreen();
}
}
// -->
</script>
改变如下两行的HTML文件为你想要弹出的窗口。
var thewindow = window.open('windowversion.html', 'WindowName', winSize); -- line 50
and
window.open('thefullscreen.html','windowname','fullscreen=yes'); -- line 56
改变下面的文件是提示你浏览器版本过旧的问题。(译者:基本没什么用,不用理它)
self.location.href = 'oldbrowser.html'; -- line 46
创建一个按钮在你的FLASH文件中,并加入如下的ACTION:
on (release) {
getURL ("javascript:MakeItSo()");
}
注意一下,我们需要弹出的全屏的窗口是在JAVASCRIPT中实现的。如果你需要实现按不同的按钮通过定义变量实现不同窗口的全屏,这篇教程就写不下了,如果你需要,到论坛来,我们会帮解决。
附录:
如何实现不带卷轴的全屏效果,很简单,将滚动条设置为无,如下:
<body bgcolor="#FFFFFF" text="#000000" scroll='no'>