我怎么能大小.swf全屏与.js

How can I size a .swf to full screen with .js

本文关键字:js swf 怎么能      更新时间:2023-09-26

我的应用程序是建立在Flash Builder。我想嵌入一个小Flash登录表单内的HTML页面。登录表单是在"login"状态的代码,是几百像素宽/高。"默认"状态设置为100%的高度和宽度。我有一个调整大小的函数,它在登录接收到适当的凭据后执行。

private function resizeApplication():void {
            if(ExternalInterface.available) {
                ExternalInterface.call("resizeApplication");
            } 

执行大小调整的javascript是这样的:

function resizeApplication() {
  var app = document.getElementById('app');
  app.style.height = '100%';
  app.style.width = '100%';
  app.style.left = '0';
  app.style.top = '0';}

#app为div,正文中的overflow设置为auto。这工作只是很好,除了我留下了一些网页的底部附近的可见部分。我希望能够调整网页的大小,以匹配swf或隐藏一切,除了swf。我尝试了一些不同的东西与js包括设置底部属性为0和使用document.body.clientHeight的变化。

你不能让它"全屏",但你可以让它填满浏览器。首先,app元素的位置样式应该预先设置为固定或绝对(取决于你的页面),因为从脚本中设置它会重新加载flash对象。

如果位置是固定的,则使用这个:

app.style.top = '0';
app.style.left = '0px';
app.style.top = '0px';
app.style.right = '0px';
app.style.bottom = '0px';

这个是绝对的找出viewport的位置和它的大小然后移动和调整你的app元素的大小

http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html

无论哪种方式,如果你只是从ActipnScript中制作flash全屏,对你来说不是更容易吗?

fscommand("fullscreen", "true"); // ActionScript 2
stage.displayState = StageDisplayState.FULL_SCREEN; // ActionScript 3

您必须手动设置div的高度,以始终获得您正在寻找的效果。这与使背景图像始终填充屏幕的技巧相同。

像这样:

function resizeMain(){
$("#wrapper").height(window.innerHeight);
$("#background").height(window.innerHeight);
$("#background").width(window.innerWidth);
}
window.onresize = resizeMain;
$(document).ready(function(){resizeMain();});

为什么不直接使用

进入真正的全屏模式
StageDisplayState.FULL_SCREEN